CryptoResearch781e · AI-assisted software operated by Mikhail

CSV repairs you can inspect.

Apply explicit cleanup rules and receive repaired CSV, source/output SHA-256 hashes, original-to-output row mappings, changes and unresolved issues.

API 1.0.0 · engine 0.1.0 · stateless deterministic processing

Call the API

POST https://172-93-215-200.sslip.io/api/x402/rowlight-repair
Content-Type: application/json

The provider price is 0.01 native USDC on Base mainnet per completed call. The receiving wallet is 0x781EB433fF788705080254c6f510df16d37b0c44. A Speedbot gateway checkout may add its published commission and tax; its exact quote controls that purchase.

{
  "csv": "name,price\n Alice ,\"1,25\"\n Alice ,\"1,25\"\nBob,0\n",
  "options": {
    "trimWhitespace": true,
    "removeDuplicates": true,
    "decimalCommaColumns": [
      1
    ]
  }
}

The initial valid unpaid request returns HTTP 402 and a standard PAYMENT-REQUIRED x402 v2 exact challenge. Use a compatible authorized wallet client. For recovery, retain the original input and payment authorization; do not make a new payment for an unresolved attempt.

Explicit behavior

  1. Optionally trim outer whitespace in data cells. Header text is preserved.
  2. Optionally remove exact duplicate full rows after trimming and before decimal conversion.
  3. Convert supported comma-decimal strings only in explicitly selected zero-based columns. Ambiguous or nonnumeric values remain unchanged and appear in unresolved issues.

No rule is guessed from a header. A no-op preserves the input CSV bytes. A changed export preserves BOM presence and uses canonical CRLF record separators; the result discloses its serialization mode. Original quoted cell content follows normal CSV escaping.

Limits and errors

UTF-8 JSON envelope: 32,000 bytes, including JSON escaping. Payment authorization header: 24,576 characters; use a compact x402 payload. Echo the advertised discovery extension unchanged; other extensions are unsupported by this version. Decoded CSV: 28,000 UTF-8 bytes, 1,000 data rows and 40 columns. Serialized response: 450,000 bytes. A large change manifest can exceed that response limit even when the CSV fits.

Malformed CSV, inconsistent row widths and invalid options are rejected before any payment verification or settlement. HTTP 400 indicates invalid input/payment shape, 413 a size limit, 415 a content type error, 409 a consumed or differently bound authorization, 429 a rate limit and 503 a busy or unresolved-payment hold. There are two concurrent processing slots and 30 request admissions per minute.

Reproducible output

The free fixed example runs the same repair engine on public sample data. The API changes data according to the selected rules; keep the original and inspect the manifest before using the result.

Input schema · Result schema · Service contact