{"uid":"cap_Bv9X6-_zNzTD4TiCJm8e4","slug":"netintel-structured-translation-api-b578b7af","name":"NetIntel Structured Translation API","description":"Network intelligence API — 138 endpoints, all pay-per-call via x402 micropayments (USDC on Base or Solana mainnet).\n\nNetIntel is agent fair-trade aligned: transparent per-call pricing in USDC on Base or Solana via x402, no API keys or signup, and automatic no-charge on server errors, upstream failures, and input-validation rejections — failed calls are never billed across NetIntel's network, domain, and data-intelligence endpoints.","url":"https://netintel-production-440c.up.railway.app/translate/structured","method":"POST","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method","bodyType","body"],"properties":{"body":{"type":"object","required":["content","target"],"properties":{"tone":{"type":"string","description":"Optional tone guidance, e.g. \"friendly and concise\"."},"locale":{"type":"string","description":"Target locale for regional variants, e.g. \"fr-CA\"."},"source":{"type":"string","description":"Source language. Auto-detected when omitted."},"target":{"type":"string","description":"Target language — ISO 639-1 code (\"fr\") or English name (\"French\"). Aliases also accepted: target_lang, target_language, to, lang."},"content":{"type":"object","description":"The structured content to translate: a JSON object/array, or a string of HTML, Markdown, or template text. Max 32KB / 500 strings."},"glossary":{"type":"object","description":"Enforced term mappings: {\"dashboard\":\"tableau de bord\"}. Compliance is reported per term; a missed term costs 10 points."},"formality":{"type":"string","description":"\"formal\", \"informal\", or \"neutral\" (default)."},"content_type":{"type":"string","description":"One of \"json\", \"html\", \"markdown\", \"template\", \"text\". Auto-detected when omitted; a non-string content is always treated as json."},"protected_values":{"type":"array","description":"Strings that must pass through byte-for-byte — brand names, IDs, SKUs: [\"Acme\",\"SKU-1234\"]. Dropping one fails the call."}}},"type":{"type":"string","const":"http"},"method":{"enum":["POST"],"type":"string"},"bodyType":{"enum":["json","form-data","text"],"type":"string"}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"grade":{"type":"string","description":"Letter grade A-F derived from score"},"score":{"type":"number","description":"0-100; 100 on a clean, structure-valid translation"},"findings":{"type":"array","description":"Scored deductions, e.g. glossary_missed"},"warnings":{"type":"array","description":"Non-fatal notes, e.g. a missed glossary term"},"translated":{"type":"object","description":"The translated document, in the same shape and format as the input"},"content_type":{"type":"string","description":"The content type used (given or auto-detected)"},"target_language":{"type":"string","description":"ISO 639-1 code translated into"},"detected_language":{"type":"string","description":"ISO 639-1 code of the source language"},"glossary_compliance":{"type":"object","description":"Which glossary terms were applied and which were missed"},"structure_validation":{"type":"object","description":"Proof the document still parses: JSON keys intact, HTML tags balanced, markdown syntax preserved"},"placeholder_validation":{"type":"object","description":"Proof that every placeholder, tag, URL, email, code span, and protected value survived. A drop is a 502, never a 200."}}}}}}},"responseSchema":{"type":"json","example":{"grade":"A","score":100,"findings":[],"warnings":[],"translated":{"cta":"Cliquez ici pour ouvrir le tableau de bord","greeting":"Bonjour {{name}}"},"content_type":"json","target_language":"fr","detected_language":"en","glossary_compliance":{"missed":[],"applied":["dashboard→tableau de bord"]},"structure_validation":{"type":"json","passed":true},"placeholder_validation":{"found":["{{name}}"],"passed":true,"missing":[],"expected":["{{name}}"]}}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.02","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.02/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_jnQi5QibL8irJCismx_6U","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.02","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Translates structured content (JSON, etc.) between languages with placeholder preservation, glossary compliance, and quality grading","exampleAgentPrompt":"Translate this JSON UI string bundle to French — it has placeholders like {{name}} and {{count}} that must stay intact, and I want to enforce that 'dashboard' always becomes 'tableau de bord'. Give me a quality grade when you're done.","exampleUseCases":[{"title":"Localizing app UI strings","prompt":"Take this JSON object with my app's button labels and greeting messages and translate it to Spanish. Make sure any {{username}} or {{count}} placeholders are preserved exactly as-is, and tell me if the translation quality passes or has any issues."},{"title":"Enforcing brand glossary in translation","prompt":"I need to translate this JSON settings panel content to German, but certain terms like 'dashboard' must always be translated as 'Armaturenbrett'. Can you apply that glossary rule and flag if any terms were missed?"},{"title":"Validating translated structured content","prompt":"Here's a JSON locale file that someone already translated to Japanese — can you score its quality, check that all the {{placeholder}} variables are still present, and give me a grade with any warnings about what might be wrong?"}],"resultDescription":"Returns a JSON object containing: the translated structured content preserving original format, a letter grade (e.g. 'A') and numeric score (0-100), detected source language, target language, lists of findings and warnings, glossary compliance details (which terms were applied or missed), and placeholder validation results (found, expected, missing placeholders).","failureModes":["Invalid or malformed JSON input — returns input validation error, not billed","Unsupported language code — returns validation rejection, not billed","Missing required fields — returns validation error, not billed","Upstream translation service failure — returns server error, not billed","Placeholder mismatch in output — flagged in placeholder_validation but call still succeeds","Glossary terms not applicable — returned as missed in glossary_compliance"],"whenToPreferThis":"Choose this endpoint when you need to translate structured/JSON content (not plain prose) and require guarantees around placeholder integrity, custom glossary enforcement, and machine-graded quality scoring. It is especially suited for software localization workflows where breaking template variables or mistranslating brand terms would cause downstream bugs. The pay-per-call x402 micropayment model (no API key required) makes it ideal for agent pipelines that need on-demand translation without account setup.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T06:39:50.476Z","isFirstParty":false}