Translate structured documents (JSON, XML, YAML)
while preserving format and structure
Use your known providers or try new AI models—without compromise
You have JSON. You need it in Spanish. You don't want it to break.
That's it. Structure preserved, keys untouched, values translated.
Your i18n files are a mess of {{placeholders}} and $t(keys).
We handle them. They don't get translated into garbage.
Translation is expensive, and you're stuck with one provider.
We support traditional providers (Google, DeepL, Azure) and the latest AI models—good quality, way cheaper. Switch anytime.
You need to know what it costs before you run it.
Every provider shows cost per million chars. No hidden fees, no surprises.
You're a developer. You want an API, not a dashboard.
Curl it. Script it. Automate it. Done.
curl -X POST https://structtranslate.moredevs.ai/v1/translate \
-H "Authorization: Bearer YOUR_KEY" \
-d '{
"source": "en-US",
"target": "pt-PT",
"provider": "gemini-2.0-flash-001",
"content": { ... }
}'Everything's free for 30 days right now. We need real users to test this.
Available today:
We expect bugs. We need feedback. That's why it's free.
Want to test your integration without burning through translation credits (and/or helps not burning our account)? Use provider: "mock" - runs the full pipeline (parsing, format conversion, reconstruction) but skips the actual translation. Perfect for testing format conversions or pipeline integration without any translation costs.
Here's how pricing works:
Think of it like having different vehicles - some are fuel-efficient hybrids, others are gas-guzzling trucks. Same trip, different fuel costs.
We let you choose which vehicle to drive based on what you need:
We charge based on "consumed characters" = actual_chars × multiplier
This keeps our costs predictable while giving you freedom to choose.
Free Plan: 50K consumed chars/month (~1.4M actual with Gemini, ~42K with Google) • 1,000 requests/month • 10 requests/minute • 1 API key • Hard cap (no overage)
Context for the math:
• Typical i18n file (en.json with 100-200 strings): ~5,000 chars
• Page of dense text: ~5,000 chars
• Medium JSON document (API response): ~50,000 chars
Free plan's 50K consumed = 10 i18n files with Google, or ~300 files with Gemini (0.035× multiplier).
These numbers will probably change based on what we learn from early users.
Not just bug reports.
Tell us:
Be honest. We'd rather hear "this sucks because X" than "looks great!"
Found a bug or have an idea? Open a GitHub issue
Prefer email? Drop us a line: info@moredevs.ai
We have a product that generates reports and stores them in JSON format. Reports are expensive to produce—lots of computation, API calls, data processing.
We noticed different clients were generating identical reports. So we re-architected everything to reuse common blocks. Works great, saves money.
Then clients started asking: "Can we get these reports in Portuguese? German? Japanese?"
Two options:
We chose Option B. Seemed simple.
It wasn't.
Complex JSON structures with nested objects. Only translate specific fields, preserve others. Handle arrays. Don't touch IDs, metadata, or keys.
What started as "just translate these fields" turned into an algorithm that kept growing. Edge cases everywhere. Different structures need different rules.
We also found that some blocks were fine with cheap AI providers (Gemini, GPT-3.5), while business-critical content needed traditional providers (DeepL, Google Translate).
We were tired of writing custom scripts that only grew more complex. So we built an API.