RECAST
Processing…
Recent (this device only)
Saved presets
Upgrade to Pro

Data format toolkit

JSON to TypeScript

Paste a real JSON sample — an API response, a config file — and get back a proper TypeScript interface, with nested objects, array types, and union types for mixed-type arrays all inferred automatically. Paste an array of samples instead of a single object and fields that aren't present in every item are correctly marked optional (field?: type), not forced. Uses the same inference engine as the JSON Schema Generator, so the two always agree on structure. Need runtime validation too, not just compile-time types? Try JSON to Zod.

← Full toolkit (all 16 tools)

JSONPath
Drop file to load
JSON 0 chars
⌘/Ctrl + Enter
CSV 0 chars
0 / 256 KB free limit
Batch: JSON → CSV
Free limit reached or nearly full. Pro unlocks 25 MB files, batch convert, and saved presets. Upgrade to Pro →

Pricing

Free for one-off conversions. Pro for daily use.

Occasional use is free, forever. If you're converting files at work every day, Pro pays for itself in the first ten minutes you save.

Free

£0/forever

For occasional, one-off conversions.

  • Convert, validate, format, diff, JSONPath, schema generate + validate
  • CSV compare up to 50 rows per file
  • Files up to 256 KB
  • One file at a time
  • Runs entirely in-browser
Use for free

API

£29/month

For scripts, pipelines and internal tools.

  • Everything in Pro
  • REST API with your own key
  • 10,000 conversions / month
  • Webhook + CLI available
  • Team seats (add-on)
Get API – £29/mo API yearly – £290
Only need it once? Get a 24-hour Pro pass for £2.99 — no subscription, unlocks everything in Pro for a day.

FAQ

A few things worth knowing.

Do I need to create an account?

No — Recast doesn't use logins, emails, or passwords. When you pay, your browser is automatically given secure access. This means access is tied to the specific browser you paid in, not to an identity we track. If you switch devices, use a different browser, or clear your browser's storage, click Manage subscription from the original browser to pick it back up, or get in touch and we'll sort it out.

Is my data ever uploaded anywhere?

No. Every conversion, diff, and validation runs entirely inside your browser tab. Nothing you paste into the tool is ever sent to a server — the only exception is the checkout process itself, which is handled directly by Stripe.

What happens if I cancel?

Cancel any time from Manage subscription. Your access reverts to the Free tier automatically — usually within moments, always by your next page load — no need to email anyone.

Can I use Recast in a script or CI pipeline?

Yes — the same engine that powers the browser tool is available as recast-cli, an npm package with no network dependency, plus a REST API on the API plan.

API

Convert from your scripts and pipelines.

Same conversions as the browser tool, available over a simple REST API. Ideal for backends, CLIs, and internal tools. Prefer zero network dependency? The recast-cli npm package runs the identical engine locally.

Recast API

Your access token — the same one issued when you subscribe — doubles as your API key. 10,000 calls per month, resets on the calendar month, tracked and returned with every response.

curl https://tryrecast.app/v1/convert \
  -H "Authorization: Bearer rk_live_••••••••" \
  -H "Content-Type: application/json" \
  -d '{
    "mode": "json2csv",
    "input": "[{\"id\":1,\"name\":\"Ada\"}]"
  }'

# -> {"output":"id,name\n1,Ada","usage":{"calls_this_month":1,"limit":10000}}

POST /v1/convertmode: json2csv, csv2json, json2xml, xml2json, flatten, unflatten
POST /v1/diffmode: diffJson, diffXml, diffCsv (send inputA/inputB instead of input)
POST /v1/schema — infers a JSON Schema (draft-07) from a sample input

Live preview — runs in your browser, same engine as the API
// click Run to see the output