API Overview

I18n JSON Uploads

I18n JSON uploads import nested translation JSON into a Lezu project.

Import JSON Content

POST /v1/i18n/projects/project_123/import
Authorization: ApiKey lez_...
Content-Type: application/json
{
  "locale": "en",
  "content": {
    "home": {
      "title": "Welcome",
      "cta": "Start now"
    }
  }
}

Lezu stores these values as translation keys:

home.title
home.cta

Import and Translate Missing Values

{
  "locale": "en",
  "targetLocales": ["nl", "fr", "de"],
  "translateMissing": true,
  "content": {
    "home": {
      "title": "Welcome",
      "cta": "Start now"
    }
  }
}

Lezu imports the source language first, then translates missing values for each target language.

Placeholder Safety

When translating app strings, keep placeholders in the source text:

{
  "checkout": {
    "items": "You have {count} items in your cart"
  }
}

Lezu is designed for application localization, so placeholders and structured keys are treated as part of the content contract.