Bulk Importing
QReserve Bulk Resource Importing Guide
Use bulk CSV importing to rapidly populate your resource inventory or update existing resources (Administration → Resources → Upload).
⚠️ 4 Critical Formatting Guardrails
To prevent upload errors and ensure your CSV spreadsheet parses cleanly on the first try, review these core formatting rules before preparing your file:
- Enter All Durations in SECONDS: QReserve calculates all booking durations and buffer windows in seconds (e.g., enter 1800 for 30 minutes, or 28800 for 8 hours). Do not enter raw minutes or formatted time strings like 0:30.
- Build Site Prerequisites First: If your CSV contains values in the Tags, Groups, Credentials Required or Custom Properties columns, those tags, user access groups, safety credentials and custom properties must be created in QReserve first.
- Rates Are Uploaded Separately: Pricing rates cannot be attached via the primary resource CSV. Once your resources are imported, configure rate schedules under
Administration → Resources → Rates. - Keep Resource IDs Consistent: When updating existing resources, ensure the Resource ID remains unchanged to prevent the creation of duplicate entries.
🛠️ Step-by-Step Import Workflow
Follow this linear sequence to ensure a smooth data import:
Step 1: Pre-Build Prerequisites in QReserve
Before uploading, ensure your User Groups, Credentials, Custom Properties, and Resource Tags exist in QReserve. The importer matches text strings in your CSV to pre-existing site IDs.
Step 2: Download or Copy the CSV Template
Download our pre-formatted spreadsheet template below, or copy the sample data block directly into Excel, Google Sheets, or Notepad. Note that this is not an extensive list of all data points you can upload, but rather an example of various resource types and how they are configured in the sheet. For a full list of parameters, see the Reference Dictionary below.
⚠️ Note: You do not need to include every column in your upload.
Editing Existing Resources
If you are editing existing resources, the most efficient method is to go to Administration → Resources → Download (top right corner). This CSV export will include all your resources along with their current Resource IDs, ensuring that your updates are mapped correctly.
⚠️ Note: You do not need to include every column in your upload. When updating existing resources, only include resources you intend to update; unchanged resources can be omitted.

Step 3: Upload and Audit in the Admin Console
Navigate to Administration → Resources → Upload. Select your .csv file. QReserve will parse your file and display a pre-import preview modal detailing any conflicting values or missing required fields.
Step 4: Configure Resources & Verify Permissions
Once resources are imported, you can configure additional settings such as rate schedules, forms, scripts, and file attachments. It is a best practice to verify that your resources are correctly configured and permissions are accurate. You can test this by using bot or test accounts in addition to your administrative account. For more information, see Testing with Bot and Test Accounts.
⏱️ Time-to-Seconds Conversion Reference Chart
Use this quick reference to convert everyday facility time rules into native CSV input values:
Common Duration | Time in Minutes | CSV Input Value (Seconds) |
15 Minutes | 15 min | 900 |
30 Minutes | 30 min | 1800 |
1 Hour | 60 min | 3600 |
2 Hours | 120 min | 7200 |
4 Hours (Half Day) | 240 min | 14400 |
8 Hours (Full Day) | 480 min | 28800 |
24 Hours (1 Day) | 1,440 min | 86400 |
📚 Complete Native Column Reference Dictionary
All columns are optional except for Name (when creating new resources) or Resource ID (when updating existing resources).
1. General Resource Properties
Column Header | Format | Example | Description |
Name | Text (REQUIRED) | Mass Spectrometer | The name of your resource should always be included in your CSV import. |
Resource ID | Text | 1ewbzei845orwcqpf1c1z16vyibub5c2nd57qp | The QReserve assigned ID for existing resources. Required when updating existing items; present when exporting existing resources. |
Reservable Type | Text | reservable | One of: reservable (can be reserved on a calendar), reservablerequestable (can be requested outside of a calendar). Note: You cannot change this setting after the resource is created. If you need to switch between 'reservable' and 'reservablerequestable' later, you must deactivate this resource and add a new one. |
Class | Text | equipment | Pre-sets built-in properties. Must be one of: equipment, consumable, locations, person, service, solution, software, event. |
Category | Text | Analytical Instruments | The category or folder where this resource appears in the directory. This helps users find and filter resources on your site page. |
Tags | Text | Cleanroom, High-Value | A list of tags separated by commas. Tags must be set up in your site prior to using them in a CSV upload. Tags are visible to admins only and are helpful for data organization, filtering reports, and calendars. |
Groups | Text | Chemistry Dept, PhD Student, After Hours Access Group | List of user groups permitted to access this resource (comma-separated). Note: These groups must be defined in your site before importing. |
Keywords | Text | microscope, lens, imaging | A list of search keywords separated by commas, which helps users search the resource directory. |
Contact Email | The email address of the contact user. Must be a site member already. | ||
Secondary Contact Email | One or more comma-separated emails for secondary contacts. Must be site members already. | ||
Active | Boolean | true | Set to true to keep the resource active, or false to deactivate it. Deactivated resources are moved to the 'Deactivated' folder, where they can be reactivated or archived. |
Archived | Boolean | false | Set to true to permanently delete a resource. Note: The resource must also be set to 'Active: false' (deactivated) before it can be archived. |
AltNames | Text | QTOF, Mass Spec 1 | List of alternative display names separated by commas. |
Status | Text | operational | The operational status of the resource (operational, non-operational, needs repair, broken, disposed, missing). This is strictly informational and visible on the resource profile; it does not affect the calendar or request table. |
Status Detail | Text | Undergoing annual calibration | Additional details about the status. |
Disclaimer | Text | Users must clean after use! | An important disclaimer displayed in red bold text on the reservation checkout page and calendar. |
Location | Text | Room 302 | Internal private location identifier (e.g. Room 302). |
Public Location | Text | Chemistry Hall | External public-facing location identifier. |
Description | Text | High-resolution mass spec | Summary of capabilities, specifications, or rules. |
Website | URL | Public URL for resource documentation or information. If you prefer to host files directly, you can also upload downloadable documents to the resource profile after import. | |
ImageURL | URL | The URL of a public image that the platform will retrieve and display on the resource profile. If you do not have a public image URL, you can manually upload a photo directly to the resource profile in QReserve after the import is complete. | |
Manufacturer | Text | Agilent Technologies | Asset manufacturer name. |
Model | Text | 6545XT | Asset model number or name. |
Units | Integer | 1 | The number of units available. |
Units Name | Text | Mass spec | The name of your units (e.g., shelves, items, etc.). |
Units Consumable | Boolean | False | Either true or false to have units deplete with use (cannot be changed after a resource is created). |
Units Mode | Text | Set to numbered (default) or named. This field may be excluded if not applicable to your resource. | |
Serial Number | Text | SN-88229911 | Hardware serial number. |
Barcode | Text | LAB-MS-001 | The text representation of a physical asset barcode or tag ID. |
Purchase Price | Number | 25000.00 | The decimal number representing the purchase price. |
Purchase Date | Date | 2023-05-15 | Date formatted as YYYY-MM-DD. |
For Sale | Boolean | false | Either true or false. This parameter is a helpful setting when using the QReserve marketplace feature to sell or trade resources. |
Training | Text | Note to Users: Basic Lab Safety Training and a Lab Orientation Tour are required to reserve this instrument. Please contact the admin team to schedule. | A description of training required to access this resource. Note that this is a description field only; if you are tracking credentials in QReserve, please use the 'Credentials Required' column in the Reservation & Request Properties table to enforce requirement rules. |
SKU | Text | Stock Keeping Unit code. | |
Custom Property | Text | Calibration Due | Any custom properties recognized upon upload, provided the header name matches existing site properties. Ensure the custom property is defined in QReserve before uploading. |
2. Reservation & Request Properties
Column Header | Format | Description |
Reservation Unit Limit | Integer | Maximum number of units per reservation or request. |
Default Reservation Duration | Seconds (Integer) | Default reservation slot duration in seconds pre-selected on calendar. |
Reservation Minimum | Seconds (Integer) | Minimum reservation duration in seconds (e.g., 30 mins = 1800). |
Reservation Limit | Seconds (Integer) | Maximum reservation duration in seconds (e.g., 8 hours = 28800). |
Buffer Before | Seconds (Integer) | Mandatory buffer time added before a reservation in seconds. |
Buffer After | Seconds (Integer) | Mandatory buffer time added after a reservation in seconds. |
Autodeny Window | Seconds (Integer) | Time after the start of a pending reservation to automatically mark it as denied. |
Autocancel Window | Seconds (Integer) | Time after the start of a reservation to cancel it if no check-in or actual usage activity is recorded. |
Historical Edit Window | Seconds (Integer) | Time into the future after the end of a reservation when it can be edited (positive or negative value). |
Creation Start Time Restriction | Seconds (Integer) | Lead notice time required prior to start that a reservation can be made. |
Creation Start Time Restriction Future | Seconds (Integer) | Advance booking restriction window into the future that a reservation cannot be made beyond. |
User Visible Reservation Details | Boolean | true or false for whether standard users can see details of other users' reservations. |
Anonymous Reservations | Boolean | true or false for whether reservations are completely anonymous to standard users. |
Hidden to Cannot Reserve Users | Boolean | true or false. If true, the resource is hidden from users without booking permissions, such as specific user groups or credentials. |
Is Addon | Boolean | Set to true if this item is a booking add-on. |
Exclude from Activity Report | Boolean | Set to true or false to exclude this resource from activity reporting. |
Custom Reserve Button Text | Text | Replaces the default Reserve or Request button text in the application. |
Credentials Required | Text | Comma-separated list of credential type names already defined in your site. If matched, the import preview displays the IDs of these credentials; unmatched credential names return an error. |
Nolist To Everyone | Boolean | When true, this resource will never be listed on your site page. When false, the resource can be listed on the site page (subject to user permissions). |
3. Loan-Specific Options
Column Header | Format | Description |
Loanable | Boolean | Set to true or false to enable loan desk behaviors. |
Future Loans | Boolean | Set to true or false on whether to allow reserving future loans. |
Returnable | Boolean | Set to true or false. If set to false, only admins can mark items as returned on behalf of the user. |
Overdue Notice Delay | Seconds (Integer) | Delay from when a resource becomes overdue to when the first notice email is dispatched. |
Troubleshooting
When uploading data, your CSV file will first be parsed by the QReserve platform for any initial problems. Once upload has begun, additional issues may arise for invalid or conflicting data values. These errors are typically returned to your upload window with information about the row and the column where the error occurs. If you encounter any issues with uploading your data, please contact us.