This article explains how to prepare and submit a bulk import of service requests into SeeClickFix 311 CRM using CSV files.
Bulk Import is an add-on product. If you are interested in enabling this service, please contact your Account Manager.
Overview
Bulk Import allows you to load historical or external service request data into SeeClickFix 311 CRM.
For Accela Public Stuff exports, submit the original CSV file to your Implementation Consultant directly without modification.
For Web Central CRT exports, the system provides a TXT file. You must convert the TXT file into a properly formatted CSV file before submission. The TXT file cannot be imported directly. Please submit the formatted CSV file to your Implementation Consultant. If your data comes from any other system, follow the preparation steps below.
Bulk Import Process
Follow these steps to prepare your files correctly and avoid delays.
Step 1: Confirm Your 311 Configuration
Before preparing your CSV files, ensure that:
All request types exist in SeeClickFix 311 CRM.
All request types are configured to accept requests. Request types that block submissions cannot receive imported issues.
Required questions are configured.
Assignment rules are configured as desired.
The import process depends on the request types, questions, and assignment settings defined in your system. Data cannot be properly prepared until these settings are finalized.
Step 2: Prepare a Request Type Mapping File (If Needed)
If your legacy system uses different request type names than SeeClickFix 311 CRM, you must map them.
You can either:
Rename request types directly in your import file, or
Provide a separate mapping CSV file.
Mapping File Requirements
The mapping file must contain exactly two columns:
Column | Required | Description |
|---|---|---|
from | Yes | The old request type name |
to | Yes | The SeeClickFix 311 CRM request type name |
Important Notes
Column headers are case-sensitive.
Each value in the From column must be unique.
Duplicate mappings are not allowed.
Invalid example:
A → B
A → C
Because the system cannot determine which mapping to apply, duplicate From values will cause the import to fail. Issues may be imported into disabled request types. Disabled request types are not available for new submissions, but remain searchable and reportable.
Download Mapping Files
Step 3: Prepare Your Import File
Your import file must:
Be in CSV format
Be UTF-8 encoded
Include headers exactly as defined in the sections below
Files that do not conform will be sent back to the customer for reformatting before import. This can delay the process.
Download Import Files
Import Example: Exclude Questions with Instructions (CSV)
Example file without question columns
Import Example: Include Questions with Instructions (ZIP)
Contains two example import files that include question responses. Each file represents a single request type, as required when importing questions.
Step 4: Complete Required Fields
The following columns are required in every import file:
Column | Description |
|---|---|
lat | WGS84 latitude (SRID 4326) |
lng | WGS84 longitude (SRID 4326) |
address | Street address (no newlines) |
request_type | Must correspond to a request type configured in SeeClickFix 311 CRM. |
summary | Short synopsis, typically the same as the request type |
description | Detailed issue description |
created_at | Full ISO 8601 timestamp with timezone offset |
All required columns must be present in the header row and populated for every record.
Step 5: Field Behavior and Validation Rules
Timestamp Requirements
All timestamps must be in full ISO 8601 format with timezone offset.
Example: 2015-12-05T13:11:59-05:00
Timestamps must follow this strict order: created_at < closed_at < time of import
The comparison is strictly less than (<), not less than or equal to (<=).
Violating this order will cause the import to fail.
created_at
The created_at value:
Sets the issue creation time
Also sets the acknowledgment time
closed_at (Optional)
If populated, the issue will be imported as Closed.
Closed issues automatically transition to Archived.
If blank, the issue remains in the Acknowledged state.
If provided, it must be later than created_at.
Optional Fields
reporter_email
If blank, the issue is attributed to the default service user.
If provided:
If the email matches an existing resident account, the issue is associated with that account.
If no account exists, a new resident user account is created in an unregistered state and linked to the issue.
No notifications are sent to reporters during import.
acknowledge_message
If blank, the default message “Issue Acknowledged” will be used.
auto_assignment
Enter Yes to trigger assignment rules during import.
Enter No to bypass assignment rules.
Internal Comments
You may include:
internal_comment_1, internal_comment_2
Comments must be plain text. Newlines are accepted. Public comments are not supported at this time.
Step 6: Importing Question Responses
Question Column Formatting
Each question must be represented as a separate column in the CSV file.
The column header must:
Begin with Q:
Exactly match the question text configured in SeeClickFix 311 CRM
Example:
Q: What is the size of the pothole?
Q: Is the light completely out?
If a question is configured as required in SeeClickFix 311 CRM, a response must be provided in the corresponding column for every record in the file.
One Request Type Per File
If you are importing question responses, you must prepare a separate CSV file for each request type that includes questions.
Each file may:
Contain only one request type
Include only the questions configured for that request type
If you have 3 request types with questions, you must prepare 3 separate CSV files.
Do not combine multiple request types with different question sets into a single file.
Example Files with Questions
To see correct formatting when including question responses, download:
This ZIP file contains two example files:
import_example_1_include_questions_with_instructions.csv
import_example_2_include_questions_with_instructions.csv
Each example:
Contains a single request type
Includes only the questions configured for that request type
Demonstrates proper Q: column header formatting
Shows how required and optional fields work alongside question columns
Use these examples as a reference when preparing your own files.
Common Mistakes to Avoid
Including questions from multiple request types in one file
Misspelling or modifying the question text in the column header
Omitting responses for required questions
Forgetting to split files when importing multiple request types with different question sets
Following these rules will prevent validation errors and reduce delays in processing your import.
Step 7: Location Requirements
Coordinates must use WGS84 (SRID 4326).
Coordinates must fall within the geographic boundary associated with the request type’s agency.
If an issue has no specific location, assign a defined placeholder location, such as City Hall, with valid coordinates.
Step 8: Custom Data from Legacy Systems
If you need to preserve additional legacy information, include it as:
An internal comment
Examples:
Original legacy request ID
Original reporter name or metadata
Submission Checklist
Before submitting your files, confirm:
All request types exist in SeeClickFix 311 CRM and are configured to accept requests.
Mapping file is completed (if required).
File is UTF-8 encoded.
Headers match the template exactly.
Timestamps are ISO 8601 with timezone offset.
Timestamp ordering rules are satisfied.
All addresses are within the jurisdiction’s boundary set in SeeClickFix 311 CRM
Required questions have responses.
Separate files are created per request type when importing questions.
Appendix: Full Import Column Reference
Column | Required | Description |
|---|---|---|
lat | Yes | WGS84 latitude |
lng | Yes | WGS84 longitude |
address | Yes | Street address |
request_type | Yes | SeeClickFix 311 CRM request type, or a value mapped using the Mapping File. |
summary | Yes | Short synopsis |
description | Yes | Detailed description |
reporter_email | No | Email of reporting user |
created_at | Yes | ISO 8601 timestamp with offset |
acknowledge_message | No | Custom acknowledgment message |
closed_at | No | ISO 8601 timestamp to mark issue closed |
auto_assignment | No | Yes or No |
internal_comment_n | No | Internal comments |
Q: Question Text | No | Response to configured question |
Need Help?
If you have questions or would like assistance reviewing your files before submission, please contact your Implementation Consultant.