Skip to main content

Error Codes Reference

Every RowOps error includes a stable error code for programmatic handling and a human-readable message. This reference documents all error codes, what causes them, and how to resolve them.

Error Code Format

Errors are returned as structured objects:

{
code: "ROW_LIMIT_EXCEEDED", // Stable code for programmatic handling
message: "Row limit exceeded...", // Human-readable description
category: "limit", // user | system | limit | network
details: { // Context-specific metadata
limit: 1000,
current: 1500,
tier: "free"
}
}

Parser Errors

Errors that occur when reading and parsing your file.

PARSER_ERROR

What happened: The file could not be parsed. This usually means the file is corrupted, uses an unsupported format, or has structural issues.

How to fix:

  1. Verify the file opens correctly in Excel or Google Sheets
  2. Check for special characters or encoding issues
  3. Re-export the file as UTF-8 CSV
  4. If the file is very large, try splitting it into smaller chunks

Example message: Parser error for contacts.csv: Unexpected end of input at row 1523


INVALID_FILE_FORMAT

What happened: The file type is not supported or the file extension doesn't match its contents.

How to fix:

  1. Verify the file is one of: CSV, XLSX, XLS, XML, JSON, or a supported format
  2. Check that the file extension matches the actual format
  3. If you renamed a file, re-export it in the correct format

Supported formats: CSV, XLSX, XLS, XML, JSON, TSV, fixed-width text


FILE_TOO_LARGE

What happened: The file exceeds the maximum size allowed for your tier.

How to fix:

  1. Split the file into smaller chunks
  2. Remove unnecessary columns before importing
  3. Upgrade to a higher tier for larger file limits

Tier limits:

  • Free: 10MB
  • Pro: 100MB
  • Scale: 500MB
  • Enterprise: 2GB

ENCODING_ERROR

What happened: The file uses a character encoding that couldn't be detected or processed.

How to fix:

  1. Open the file in a text editor and save as UTF-8
  2. In Excel: Save As → CSV UTF-8 (Comma delimited)
  3. Check for special characters that may not be valid UTF-8

Common causes: Files created on Windows with Windows-1252 encodings, files with mixed encodings, or binary content embedded in text fields.


Validation Errors

Errors that occur when validating data against your schema.

VALIDATION_ERROR

What happened: One or more rows failed schema validation. This is the general validation error; specific validation failures have their own codes below.

How to fix:

  1. Review the validation errors in the error panel
  2. Fix the data issues inline or export the error report
  3. Re-validate after making fixes

REQUIRED_FIELD_MISSING

What happened: A required field has no value.

How to fix:

  1. Add the missing value to the cell
  2. If the field should be optional, update your schema to set required: false
  3. Use the bulk fix feature to apply a default value

Example message: Required field "email" is missing at row 45


TYPE_MISMATCH

What happened: The value doesn't match the expected data type.

How to fix:

  1. Check that numeric fields contain only numbers
  2. Check that date fields use a recognized date format
  3. Check for accidental text in number columns (e.g., "N/A" in a quantity field)

Example message: Invalid value for "quantity": expected number, got "TBD"

Recognized date formats: ISO 8601, MM/DD/YYYY, DD/MM/YYYY, YYYY-MM-DD


REGEX_VALIDATION_FAILED

What happened: The value doesn't match the regex pattern defined in your schema.

How to fix:

  1. Check the value against the expected pattern
  2. Common issues: wrong format for phone numbers, email addresses, or custom codes
  3. If the pattern is too strict, update your schema regex

Example message: Value "123-456" does not match pattern "^\d{3}-\d{2}-\d{4}$" for field "ssn"


ENUM_VALIDATION_FAILED

What happened: The value is not in the list of allowed values.

How to fix:

  1. Check the value against the allowed options
  2. Check for typos or case sensitivity issues
  3. Update your schema to add missing allowed values if appropriate

Example message: Value "Active" not in allowed values ["active", "inactive", "pending"] for field "status"


RANGE_VALIDATION_FAILED

What happened: A numeric value is outside the allowed range.

How to fix:

  1. Check that the value is within the min/max bounds defined in your schema
  2. Look for data entry errors (e.g., extra digits)
  3. Update your schema range if the current limits are too restrictive

Example message: Value 150 out of range [0, 100] for field "percentage"


Schema Errors

Errors related to schema configuration or column mapping.

SCHEMA_ERROR

What happened: There's an issue with the schema definition.

How to fix:

  1. Check that all required fields in the schema have valid types
  2. Verify regex patterns are valid regular expressions
  3. Ensure enum values are non-empty arrays

SCHEMA_NOT_FOUND

What happened: The specified schema ID doesn't exist.

How to fix:

  1. Verify the schemaId prop matches a schema in your project
  2. Check that you're using the correct project
  3. Create the schema in the dashboard if it doesn't exist

Example message: Schema "contacts" not found in project "proj_abc123"


COLUMN_MAPPING_ERROR

What happened: The column mapping configuration is invalid or a required column couldn't be mapped.

How to fix:

  1. Check that all required schema fields have a mapped source column
  2. Verify column names in your file match the expected mapping
  3. Use the column mapper UI to manually map ambiguous columns

Tier and Limit Errors

Errors related to plan limits and feature gates.

ROW_LIMIT_REACHED

What happened: Parsing stopped at your plan's row limit under the default stop_with_warning policy. Remaining rows were skipped, but the partial dataset is available.

How to fix:

  1. Split the file into smaller chunks within your tier limit
  2. Upgrade to a higher tier for more rows

Warning details include:

  • tier, rowLimit
  • rowsProcessed, rowsSkipped, rowsSeenSoFar
  • behavior: "stop_with_warning"
  • stage: "parse"

LIMIT_EXCEEDED

What happened: A general limit has been exceeded.

How to fix: Upgrade to a higher tier or reduce usage.


ROW_LIMIT_EXCEEDED

What happened: The import exceeded your plan's row limit and was blocked (hard_error policy or server-side permit denial).

How to fix:

  1. Split the file into smaller chunks within your tier limit
  2. Upgrade to a higher tier for more rows

Tier limits:

  • Free: 1,000 rows per import
  • Pro: 100,000 rows per import
  • Scale: 1,000,000 rows per import
  • Enterprise: Unlimited

Example message: Row limit exceeded: 1,500 rows exceeds the free plan limit of 1,000


PROJECT_LIMIT_EXCEEDED

What happened: Your organization has reached the maximum number of projects.

How to fix:

  1. Delete unused projects
  2. Upgrade to a higher tier for more projects

Tier limits:

  • Free: 1 project
  • Pro: 5 projects
  • Scale: 20 projects
  • Enterprise: Unlimited

TIER_FEATURE_DISABLED

What happened: You're trying to use a feature not available on your current plan.

How to fix:

  1. Upgrade to a tier that includes this feature
  2. Use an alternative approach available on your current tier

Feature availability:

FeatureFreeProScaleEnterprise
CSV/XLSX parsingYesYesYesYes
Basic validationYesYesYesYes
Regex validationNoYesYesYes
PII detectionNoYesYesYes
Masking (null)YesYesYesYes
Masking (advanced)NoYesYesYes
Transform operationsBasicFullFullFull
Fuzzy matchingNoNoYesYes
Deduplication (Unify)NoYesYesYes
WebhooksNoYesYesYes

Masking Errors

Errors that occur during PII masking.

MASKING_ERROR

What happened: A general error occurred during the masking stage.

How to fix:

  1. Check your mask configuration syntax
  2. Verify all referenced columns exist in the data
  3. Ensure mask strategies are valid for your tier

INVALID_MASK_STRATEGY

What happened: The specified masking strategy is not valid or not available on your tier.

How to fix:

  1. Use a valid strategy: null, partial, hash, redact, replace, scramble, encrypt, custom
  2. Check tier availability (some strategies require Pro or higher)

Strategy availability:

  • Free: null only
  • Pro: null, partial, hash, redact, replace, scramble
  • Scale+: All strategies including encrypt
  • Enterprise: All strategies including custom

MASK_COLUMN_NOT_FOUND

What happened: A column specified in the mask configuration doesn't exist.

How to fix:

  1. Check column names for typos
  2. Verify the column exists in your data after any transform operations
  3. Update your mask configuration to reference valid columns

Network and Sync Errors

Errors that occur during data sync or network operations.

SYNC_ERROR

What happened: An error occurred while syncing data to your backend.

How to fix:

  1. Check that your sync endpoint is reachable
  2. Verify your SyncTarget.sendBatch handler resolves successfully
  3. Check backend logs for errors and payload validation failures

NETWORK_ERROR

What happened: A network request failed.

How to fix:

  1. Check your internet connection
  2. Verify the endpoint URL is correct
  3. Check for CORS issues if running in a browser
  4. Retry the operation

Note: Network errors are automatically retryable. The system will retry up to 2 times with exponential backoff by default.


API_ERROR

What happened: The RowOps API returned an error.

How to fix:

  1. Check your API key is valid and not expired
  2. Verify you have permission for the operation
  3. Check the error message for specific guidance

TIMEOUT

What happened: An operation timed out.

How to fix:

  1. For large files, ensure adequate time is allowed
  2. Check network connectivity
  3. Retry the operation
  4. If consistently timing out, try smaller batch sizes

System Errors

Internal errors that typically require support assistance.

INTERNAL_ERROR

What happened: An unexpected internal error occurred.

How to fix:

  1. Refresh the page and try again
  2. Clear browser cache and localStorage
  3. Try a different browser
  4. If the issue persists, contact support with the error details

When contacting support, include:

  • The full error message
  • Browser and version
  • Steps to reproduce
  • The file (if not sensitive) or file characteristics

UNKNOWN

What happened: An unclassified error occurred.

How to fix:

  1. Check the error message for clues
  2. Refresh and retry
  3. Contact support if the issue persists

Profile Errors

Errors that occur during data profiling.

PROFILE_ERROR

What happened: Data profiling failed.

How to fix:

  1. Check for unusual data patterns (extremely long strings, binary data)
  2. Retry the import
  3. If profiling consistently fails, you can proceed without profiling

PROFILE_TIMEOUT

What happened: Profiling took too long and was aborted.

How to fix:

  1. For very large files, profiling may be skipped automatically
  2. This is a warning, not a blocking error import can continue
  3. If you need profile data, try a smaller sample of your file

License Errors

Errors related to license verification.

LICENSE_INVALID

What happened: The provided license key is not valid.

How to fix:

  1. Check the publishable key is copied correctly
  2. Verify the key hasn't been revoked in the dashboard
  3. Generate a new key if needed

LICENSE_EXPIRED

What happened: The license has expired.

How to fix:

  1. Renew your subscription
  2. Contact support if you believe this is an error

DOMAIN_NOT_ALLOWED

What happened: The current domain is not authorized for this publishable key.

How to fix:

  1. Add the domain to your project's allowed domains in the dashboard
  2. Verify you're using the correct publishable key for this project
  3. Note: localhost is always allowed for development

How to add a domain:

  1. Go to Dashboard → Project → Domains
  2. Click "Add Domain"
  3. Enter your domain (e.g., app.yourcompany.com)
  4. Save and wait for propagation (usually instant)

Error Categories

Errors are categorized for programmatic handling:

CategoryDescriptionUser Action
userCaused by user input or dataFix the data or configuration
limitPlan limits exceededUpgrade or reduce usage
networkNetwork or connectivity issuesRetry the operation
systemInternal system errorContact support

Recovery Actions

Each error has a recommended recovery action:

ActionDescription
retryOperation can be retried as-is (network errors)
abortOperation should be restarted after fixing the issue
blockOperation is permanently blocked until conditions change (upgrade)
resumeOperation can continue from a checkpoint

Getting Help

If you encounter an error not documented here or need assistance:

  1. Check the error details - Expand error details for stack traces and context
  2. Search the docs - Many errors have specific troubleshooting guides
  3. Support - Contact support@rowops.dev for urgent issues

When reporting issues, always include:

  • Error code and full message
  • Browser/environment details
  • Steps to reproduce
  • File characteristics (size, format, approximate row count)