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/v1Authentication
No authentication is required for the current version of the API. Rate limiting is applied to prevent abuse.
Endpoints
Health check
/healthReturns API health and service name.
Response
{
"status": "healthy",
"service": "csvlinter-api",
"version": "1.0"
}Validate CSV files
/validateValidates one or more CSV files, optionally using a JSON schema. Returns validation results for each file.
Request
Content-Type: multipart/form-data
Parameters
csvrequiredfileCSV file(s) to validate. Supports 1-5 files with .csv extension or text/csv MIME type.
schemaoptionalfileJSON schema file for validation. Must have .json extension or application/json MIME type.
delimiteroptionalstringField delimiter (single character). Default: ,
fail-fastoptionalstringStop at first error. Values: true or false. Default: false
formatoptionalstringOutput format. Values: json or pretty. Default: json
filenameoptionalstringLogical 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.