THTinyData.api
PAY-PER-CALL DATA TOOLS

Clean rows.
Encode & hash.

Clean CSV, hash text or batches, and encode or decode Base64. Hashing and Base64 cost $0.001; CSV cleanup and batch hashing cost $0.01 per successful x402 request in USDC on Polygon.

Read the API docs $0.001–$0.01 / success
● USDC on Polygon● Up to 20,000 CSV rows● Inputs are not stored
POST /api/batch-hashx402 · Polygon

Request · 3 items

{
  "items": ["alpha", "beta", "gamma"],
  "algorithm": "SHA-256"
}

Ordered digests

{
  "ok": true,
  "algorithm": "SHA-256",
  "count": 3,
  "hashes": [
    "8ed3f6ad685b959ead7022518e1af76c...",
    "f44e64e75f3948e9f73f8dfa94721c4c...",
    "be9d587defa1f0c09ef49eb17e206983..."
  ]
}
UTF-8 input · SHA-256 by defaultone payment / batch

Built for batch jobs

Four data jobs. One small request each.

01

Clean a CSV

Trim cells, remove blank or duplicate rows, and optionally sort by a header. Files stay in the request.

02

Hash text

Get SHA-256, SHA-512, or keyed HMAC-SHA-256 for one string or a batch of up to 500.

03

Encode text

Encode or decode UTF-8 as standard Base64 or unpadded Base64URL.

04

Pay per success

Hashing and Base64 cost $0.001; CSV cleanup and batch hashing cost $0.01 USDC on Polygon.

API reference

Four endpoints. Clear prices.

Each route returns an x402 payment requirement to compatible clients. Payment settles only after a successful response.

POST /api/hash$0.001 / request

SHA-256 · SHA-512 · HMAC-SHA-256 · one string or up to 500 strings

Read request details
POST /api/encode$0.001 / request

Base64 and Base64URL · encode or decode UTF-8 text

Read request details
POST /api/clean-csv$0.01 / request

Up to 20,000 rows · trim · deduplicate · remove blanks · optional stable sort

Read request details
POST /api/batch-hash$0.01 / batch

2–500 UTF-8 strings · SHA-256 or SHA-512 · ordered lowercase hex output

Read request details

USDC · Polygon (eip155:137) · $0.001 for hash/Base64 · $0.01 for CSV cleanup/batch hash · maximum request size: 1 MB

CSV cleanup · POST /api/clean-csvapplication/json
{
  "csv": "name,city\n Ada ,Oslo\nAda,Oslo\nLin,Seoul",
  "options": {
    "trim": true,
    "deduplicate": true,
    "sortBy": "name"
  }
}
Response · duplicate removed, input cells trimmed, output stays CSV
{
  "ok": true,
  "csv": "name,city\r\nAda,Oslo\r\nLin,Seoul",
  "stats": {
    "inputRows": 3,
    "outputRows": 2,
    "duplicateRowsRemoved": 1,
    "emptyRowsRemoved": 0,
    "columns": 2
  }
}
Maximum request: 1 MB. Inputs and results are not stored.