Getting started

From zero to your first auto-translated string, fetched from your app via the Public API.

Not verified yet

This guide walks you through creating a namespace, adding a translation key, generating a translation with AI, and fetching it from your application. It's all dashboard-driven; if you'd rather work from your Git repository, jump to the CLI afterwards — the concepts are the same.

Prerequisites

Create a namespace

A namespace is your translation workspace. Most teams create one per app or per client project.

  1. Open the dashboard and switch to LangSync in the sidebar.
  2. Go to NamespacesNew namespace.
  3. Fill in:
    • Name — a short slug of letters, digits, hyphens, and underscores (e.g. marketing-site). It appears in API paths and CLI commands, so keep it short and lowercase.
    • Description — what lives in this namespace, for your team's benefit (e.g. "Translations of the website and landing pages").
    • Default language — the language your source strings are written in. Searchable dropdown.
  4. Click Create.

Add a target language

  1. Open the namespace, then open the menu → Namespace settings.
  2. In the languages section, pick a language (e.g. German) and add it.

Repeat for each language you want to ship in. You can add and remove languages at any time — see Languages for what removal does to existing translations.

Add your first term

  1. Inside the namespace, click Add term.
  2. Enter:
    • Mark — the translation key your code references (e.g. welcome.title).
    • Context — an optional note for your team about where the string appears.
    • Default language value — the source string (e.g. Welcome to our app).
    • Enable Translate automatically.
  3. Save.

Because Translate automatically was on, the AI fills in the German translation in the background. Refresh the terms list to see the progress; batch runs also send you an email when they complete.

Create an API key

Your application authenticates to the read-only Public API with an API key, not with your user session.

  1. Go to API keysCreate API key.
  2. Name it after where it will live (e.g. production).
  3. Copy the key from the confirmation dialog now — the full value is shown exactly once. Afterwards the list shows only a short preview.

Fetch translations from your app

First find the numeric language ID (translations are fetched per language, by ID):

curl -H "Authorization: Apikey $LANGSYNC_API_KEY" \
  "https://langsync.api.norcube.com/api/v1/namespaces/marketing-site/languages"
[
  {
    "id": 68,
    "code": "en",
    "name": "English",
    "isDefault": true,
    "isFallback": false,
    "isCustom": false
  },
  {
    "id": 31,
    "code": "de",
    "name": "German",
    "isDefault": false,
    "isFallback": false,
    "isCustom": false
  }
]

Then fetch the translations for that language:

curl -H "Authorization: Apikey $LANGSYNC_API_KEY" \
  "https://langsync.api.norcube.com/api/v1/namespaces/marketing-site/terms/translations?langId=31"
{
  "meta": { "timestamp": "2026-07-10T12:00:00Z" },
  "cursors": {},
  "list": [{ "mark": "welcome.title", "value": "Willkommen in unserer App" }]
}

Map list into whatever shape your i18n library wants — see Fetch translations for build-time and runtime integration patterns.

Next steps

On this page