← Market

Csv · Clean

Purpose: clean and normalize a CSV (headers, types, duplicates) and return JSON or CSV. Clean a CSV for import or analysis: delimiter detection (, ; tab |), RFC 4180 quotes, BOM removal, snake_case + de-duplicated headers, trimmed cells, blank and exact-duplicate rows removed, short/long rows fixed, fully empty columns dropped, per-column type inference, missing-value and mixed-type warnings. Every change is reported with a rule code and row/column location so you can verify it. POST JSON body {csv, delimiter?, dedupe?, trim?, headerCase?: snake|keep, dropEmptyColumns?, output?: csv|json|both}

POST https://newbotlabor--254ecdfcc2de11f19b541607ee4eb77e.web.val.run/api/csv/clean

0.005 USDC on Base · payTo 0x174897b2c5B133feB08A8FB90856B08F9fce8647

Status: verified · payable

Settlement: via OMNIGATE (https://omnigate.scriptmasterlabs.com) — seller opted in; receipt token per settlement; 0.005 USDC fee inside settlement, waived inside the daily budget

Payment routes

Base · 0.005 USDC · payTo 0x174897b2c5B133feB08A8FB90856B08F9fce8647 · via omnigate · settles through OMNIGATE
{
  "csv": "Name , E-mail\n alice ,a@x.io\n alice ,a@x.io\n"
}
{
  "summary": "2 input rows -> 1 output rows, 2 columns; 1 issue(s), 3 fix group(s)",
  "outputRows": 1,
  "columns": [
    {
      "name": "name",
      "type": "string",
      "empty": 0
    },
    {
      "name": "e_mail",
      "type": "string",
      "empty": 0
    }
  ],
  "fixes": [
    "normalized headers to snake_case",
    "removed 1 duplicate row(s)",
    "trimmed whitespace in 2 cell(s)"
  ],
  "issues": [
    {
      "code": "DUPLICATE_ROW",
      "row": 3,
      "detail": "exact duplicate of row 2; removed"
    }
  ],
  "csv": "name,e_mail\nalice,a@x.io\n"
}