Features - bulk export/import
Bulk Export/Import - Correspondence Items
Detailed guide for bulk export and import of Correspondence Items in Procore, including available fields, data types, and tool-specific limitations.
This guide covers the specific implementation of bulk export/import for Correspondence tools (Generic Tools) in Procore. For general concepts and the overall process, see the Bulk Export/Import - Overview.
- 1 - Correspondence Available Fields
- 2 - Correspondence Fields Specificities
- 3 - Data Model Reference Sheets
- 4 - Correspondence-specific Limitations
- 5 - Common Use Cases
- 6 - Related Documentation
1 - Available Fields
1.1 - Native Fields
The following native fields are available for export and import. Note that availability depends on your specific Correspondence tool’s fieldset configuration.
| Field Label | Export Name | Data Type |
|---|---|---|
| ID | id | string |
| Title | title | string |
| Description | description | rich_text |
| Position | position | string |
| Status | status | lov_entry |
| Due Date | due_date | date |
| Private? | private | boolean |
| Quantity | quantity | decimal |
| Unit (quantity) | uom | lov_entry |
| Schedule Impact | schedule_impact | lov_entry |
| Schedule Impact Value | schedule_impact_value | decimal |
| Cost Impact | cost_impact | lov_entry |
| Cost Impact Value | cost_impact_value | decimal |
| Received From | received_from_id | lov_entry |
| Location | location_id | lov_entry |
| Cost Code | cost_code_id | lov_entry |
| Sub Job | sub_job_id | lov_entry |
| Spec Section | specification_section_id | lov_entry |
| Trade | trade_id | lov_entry |
| Distribution Member(s) | distribution_member_ids | lov_entries |
| Assignee(s) | assignee_ids | lov_entries |
1.2 - Custom Fields
All custom fields configured in the Correspondence tool’s fieldset are automatically included. These follow the standard Procore data types (Text, Rich Text, Number, Date, Checkbox, and Dropdowns). Custom fields appear with their configured names and follow the same data type rules as native fields.
2 - Field-Specific Details
2.1 - Position Field
- On export, the tool’s prefix (e.g., “RFI-”, “LET-”) is automatically removed.
- When importing new items, ensuring a unique position number is required otherwise the import will log an error message.
2.2 - Schedule and Cost Impact
- These fields are paired: an “Impact” status (e.g., Yes, No, TBD) and a corresponding “Value” (Decimal).
- The “Value” field will only be processed if the Impact status is correctly set.
2.4 - Users and Roles
- Assignees vs. Distribution: Only users with the “Potential Assignee” permission in the tool’s settings will appear in the Assignee reference sheet.
- Received From: This must be a user with the appropriate “Potential Received From” permissions.
- Email-Based Input: For fields like distribution_member_ids, assignee_ids, and received_from_id, you must provide the email address of the user. The import engine automatically maps these email addresses to internal Procore IDs using the reference sheets. If an email is not found in the project directory, the row will fail validation. For distribution and assignees, multiple emails must be separated by a comma.
3 - Data Model Reference Sheets
The export file includes the following reference sheets to ensure data integrity during import:
| Sheet Name | Contains |
|---|---|
| status | Valid statuses for this specific correspondence tool |
| uom | Units of Measure (for quantity) |
| schedule_impact | Impact options (Yes/No/TBD/NA) |
| cost_impact | Impact options (Yes/No/TBD/NA) |
| trade_id | Company Trades |
| location_id | Project locations |
| cost_code_id | Project Cost codes |
| specification_section_id | Project spec sections |
| sub_job_id | Project Sub jobs |
| vendor | Contractors/vendors |
| login_information | All project users (for custom fields) |
| assignee_ids | Users authorized to be Assignees |
| distribution_member_ids | Users authorized for the Distribution list |
| received_from_id | Users authorized as “Received From” |
4 - Correspondence-specific Limitations
4.1 - Single Tool Scope (Non-Transversal)
[IMPORTANT] Export and Import actions are tool-specific. Because each Correspondence Type (e.g., “Letters,” “Site Instructions,” “Notice to Comply”) has its own unique Data Model and Configurable Fieldset, you cannot use a template from one tool to import data into another.
Tool ID Validation: The import file contains a hidden metadata sheet named _cor_item. This sheet contains the specific Tool ID in cell A1. If you attempt to upload this file to a different Correspondence tool, the system will reject it to prevent data corruption.
4.2 - Technical & Data Constraints
- Attachments: Files and photos cannot be uploaded via bulk import; they must be attached manually to individual items.
- Workflow-Locked Fields: If an item is currently linked to an active workflow, fields controlled by that workflow (e.g., status, assignees, due_date) cannot be updated via bulk import. These must be managed within the Procore Workflow engine.
- Fieldset Alignment: The import will fail if the Excel file contains columns (Export Names) that do not exist in the tool’s current Configurable Fieldset.
- Trade IDs (Multi-select): Currently, the bulk tool supports only single-value “Trade” fields. Multi-select Trade configurations are not supported.
4.3 - File Integrity
- Sheet Naming: The main data sheet must be named exactly as defined in the export (
CORRESPONDENCE ITEMS). - Reference Sheet: Do not delete or rename the reference sheet
_cor_itemwhich includes your correspondence tool ID.
4.4 - Super-private items
Super-private items in Procore cannot be modified by API and therefore cannot be edited using Construction Admin Helper.
5 - Common Use Cases
5.1 - Bulk Status or Date Update
pdate status for multiple submittals:
- Export with only ID, Position, Title, and Status fields
- Filter to correspondence items needing status change
- Update Status & dates with new values
- Import with mandatory check disabled
5.2 - Creating Items from External Logs
Create multiple submittals with similar data:
- Export template without existing items on your specific correspondence type
- Add rows with unique positions
- Copy common field values down columns
- Leave ID column empty
- Import with mandatory check enabled
5.3 - Custom fields Adjustments
Adjust custom fields for a set of correspondence items:
- Export with ID, Number, Title, and relevant custom fields
- Filter as required
- Update custom fields values
- Import with mandatory check disabled
6 - Related Documentation
- Bulk Export/Import - Overview (general process and concepts)