{"name":"FrostSkyNet text-data tools","description":"Three small tools that turn messy text data into tidy JSONL: clean, judge (rule-based quality scores) and format. Chain them: /clean output is /judge input, /judge output is /format input. Paid routes use the x402 protocol: an unpaid request gets HTTP 402 with the price and payment instructions; pay in USDC and retry. Nothing you send is stored or logged.","network":"base","routes":[{"method":"GET","path":"/","paid":false,"price":null,"does":"This description.","options":{}},{"method":"POST","path":"/clean","paid":true,"price":"$0.005","maxInputBytes":51200,"does":"Text/JSON/JSONL in, clean JSONL out.","options":{"minChars":"integer 1-1000","keepDuplicates":"boolean"}},{"method":"POST","path":"/judge","paid":true,"price":"$0.01","maxInputBytes":10240,"does":"JSONL in, same rows plus a _quality field out (rules only).","options":{"stripPii":"boolean","stripBadWords":"boolean","filter":"boolean","minScore":"integer 0-100"}},{"method":"POST","path":"/format","paid":true,"price":"$0.005","maxInputBytes":51200,"does":"JSONL in, final deliverable (jsonl, chat or markdown) out.","options":{"format":"one of jsonl, chat, markdown, md","system":"string, max 2000 characters","keepScores":"boolean"}}],"limits":{"maxInputBytes":{"/clean":51200,"/judge":10240,"/format":51200}},"example":{"request":{"method":"POST","url":"https://route-a-worker.frostskynet-api.workers.dev/clean","headers":{"content-type":"application/json"},"body":{"input":"first line\nsecond line","options":{"minChars":3}}},"response":{"output":"<JSONL string>","stats":{"inputFormat":"<string>","rowsIn":"<integer>","rowsOut":"<integer>"}}}}