CSViser ADVISER

API Documentation

Process and clean CSV files programmatically — no UI required.

Authentication

All requests require an API key passed as a Bearer token in the Authorization header. Generate your key in Account settings.

Authorization: Bearer csviser_xxxxxxxxxxxxxxxxxxxx

Keys start with csviser_ and are shown only once at creation — store them securely.

Endpoint

POST https://csviser.com/api/v1/process

Accepts a CSV or XLSX file, applies the requested operations, and returns the processed file as a download. Files are processed entirely in memory — nothing is stored on our servers.

Parameters

Send as multipart/form-data.

Parameter Type Description
file File * CSV or XLSX file to process. XLSX is converted to CSV automatically.
fix[] String[] One or more operations to apply. Repeat the parameter for multiple values. Available values:
  • blank_rows — remove fully empty rows
  • trim — strip leading/trailing whitespace from cells
  • nulls — normalize null variants (NULL, N/A, none…) to empty
  • encoding — normalize to UTF-8, strip BOM
  • line_endings — unify mixed CRLF + LF to LF
  • delimiter — convert semicolon/tab/pipe to comma
dedup String Pass 1 to enable deduplication — all exact duplicate rows are removed, keeping only the first occurrence of each.
output_format String Output format: csv (default), xlsx, or json.

Limits

Plan Max rows per file
Free 500 rows
Pro Unlimited
Rate limit: 10 requests per minute per API key, regardless of plan. Exceeding the limit returns 429 Too Many Requests. The window resets after 60 seconds.

Error responses

Errors are returned as JSON with an appropriate HTTP status code.

Status Meaning
401 Unauthorized Missing or invalid API key.
403 Forbidden File exceeds the row limit for your plan.
429 Too Many Requests Rate limit exceeded — more than 10 requests per minute from this API key.
422 Unprocessable Missing file parameter or invalid XLSX.
500 Server Error Processing failed. Check the error field for details.
{"error": "Row limit exceeded. This file has 1200 rows; free plan supports up to 500."}

Examples

Basic cleanup (blank rows + trim + nulls)

curl -X POST https://csviser.com/api/v1/process \
  -H "Authorization: Bearer csviser_xxxxxxxxxxxxxxxxxxxx" \
  -F "[email protected]" \
  -F "fix[]=blank_rows" \
  -F "fix[]=trim" \
  -F "fix[]=nulls" \
  -o cleaned.csv

Full cleanup + dedup + export as XLSX

curl -X POST https://csviser.com/api/v1/process \
  -H "Authorization: Bearer csviser_xxxxxxxxxxxxxxxxxxxx" \
  -F "[email protected]" \
  -F "fix[]=blank_rows" \
  -F "fix[]=trim" \
  -F "fix[]=nulls" \
  -F "fix[]=encoding" \
  -F "fix[]=line_endings" \
  -F "fix[]=delimiter" \
  -F "dedup=1" \
  -F "output_format=xlsx" \
  -o cleaned.xlsx

Export as JSON

curl -X POST https://csviser.com/api/v1/process \
  -H "Authorization: Bearer csviser_xxxxxxxxxxxxxxxxxxxx" \
  -F "[email protected]" \
  -F "fix[]=trim" \
  -F "output_format=json" \
  -o data.json

Create a free account to get your API key.

Sign up free →