API documentation
A powerful and comprehensive API for validating, analyzing, and linting CSV files. CSVLinter helps ensure data quality by detecting format errors, schema violations, and providing detailed validation reports for your CSV data.
Base URL
https://api.csvlinter.com/v1
Authentication
No authentication is required for the current version of the API. Rate limiting is applied to prevent abuse.
Endpoints
Health check
/health
Returns API health and service name.
Response
{
"status": "healthy",
"service": "csvlinter-api",
"version": "1.0"
}
Validate CSV files
/validate
Validates one or more CSV files, optionally using a JSON schema. Returns validation results for each file.
Request
Content-Type: multipart/form-data
Parameters
csv
requiredfileCSV file(s) to validate. Supports 1-5 files with .csv extension or text/csv MIME type.
schema
optionalfileJSON schema file for validation. Must have .json extension or application/json MIME type.
delimiter
optionalstringField delimiter (single character). Default: ,
fail-fast
optionalstringStop at first error. Values: true
or false
. Default: false
format
optionalstringOutput format. Values: json
or pretty
. Default: json
filename
optionalstringLogical filename for reporting purposes.
Example request
curl -X POST https://api.csvlinter.com/v1/validate \
-F "csv=@example.csv" \
-F "schema=@schema.json" \
-F "delimiter=," \
-F "fail-fast=false"
Response
Returns validation results keyed by filename.
Success response (200)
{
"example.csv": {
"valid": true,
"errors": [],
"warnings": [],
"info": {
"rows": 150,
"columns": 5,
"encoding": "UTF-8"
}
}
}
Error response (400)
{
"error": "Invalid input",
"message": "No CSV file provided",
"code": "MISSING_FILE"
}
Rate limit response (429)
{
"error": "Rate limit exceeded",
"message": "Too many requests. Please try again later.",
"retry_after": 60
}
Rate limiting
The API applies rate limiting to prevent abuse. If you exceed the rate limit, you'll receive a 429 status code with a retry_after
field indicating when you can make requests again.
Error handling
The API uses conventional HTTP response codes to indicate success or failure:
200
- Success400
- Bad Request (invalid input)429
- Too Many Requests (rate limited)500
- Internal Server Error
OpenAPI specification
You can access the complete OpenAPI specification at: https://api.csvlinter.com/v1/openapi.json
Need more? Unlock advanced features
The free API is perfect for getting started, but when you're ready to scale your CSV validation workflows, our advanced plan offers powerful features designed for production environments and high-volume operations.
Higher rate limits
Process thousands of files per hour with dedicated infrastructure and priority queuing.
Batch processing
Upload and validate hundreds of CSV files simultaneously with asynchronous processing and webhook notifications.
Custom validation rules
Define complex business logic validation rules specific to your domain and data requirements.
Analytics & reporting
Detailed usage analytics, validation reports, and data quality insights with exportable dashboards.