CSV Normalizer

Normalises a CSV — detects delimiter, encoding and header row, trims fields, unifies line endings, and reports rows with inconsistent column counts.

POST /v1/convert/csv-normalize $0.01 per call

Specification

Endpoint
POST /v1/convert/csv-normalize
Price
$0.01 per call · tier standard_data
Payment
x402 on X Layer (chain 196) · settled in USDG or USDT0 · scheme exact
Data source
Local sandboxed processing of the uploaded file
Timeout
120 seconds
Max request
20 MB
Version
1.0.0

Calling it

The first call returns a 402 with the payment challenge. Retry with a signed authorisation in the X-PAYMENT header — see the payment guide for the exact shape.

curl -i -X POST "https://api.dana-edu.pp.ua/v1/convert/csv-normalize" \
  -H "content-type: application/json" \
  -d '{ ... }'

Response

Real output, captured by running this endpoint at build time — not written by hand. Volatile fields such as timestamps are elided. Captured 2026-07-30.

{
  "detected_encoding": "ascii",
  "encoding_confidence": 1,
  "had_utf8_bom": false,
  "detected_delimiter": ";",
  "delimiter_detection": "frequency fallback (sniffer could not decide)",
  "output_delimiter": ",",
  "row_count": 5,
  "rows_dropped_empty": 0,
  "column_count": 4,
  "header": [
    "name ",
    " quantity ",
    " unit_price ",
    " currency"
  ],
  "rows_with_inconsistent_columns": [
    {
      "row": 4,
      "columns": 2,
      "expected": 4
    }
  ],
  "output_size_bytes": 127,
  "output_filename": "<varies per call>",
  "output_base64": "<base64 payload elided from the published example>"
}

Every response is wrapped in the same envelope: data plus warnings, sources, confidence, informational_only and a measured processing_ms. See the envelope reference.

Related endpoints