Zendesk Help Center
Connect your Zendesk Help Center to a localization engine. Turn on Sync for the categories, sections, and articles you want covered, and Lingo.dev translates them into your Help Center's languages and writes the translations back to Zendesk.
Works with Zendesk Guide (Help Center) content: categories, sections, and articles.
Zendesk comes with the Enterprise plan. If the Connect page says Zendesk is not on your plan, reach out and we'll sort it out.
Before You Start#
You need three things:
Admin access to Zendesk. Connecting uses OAuth, and the authorizing account needs permission to manage Help Center content. Every translation Lingo.dev writes is attributed to that account in Zendesk, so connect with a shared service account if you would rather not have one teammate's name on the whole Help Center.
Your target languages enabled in Zendesk. Lingo.dev offers exactly the languages your Help Center has enabled, and nothing else. Enable them in Zendesk under Knowledge -> Settings -> Language settings.
Languages added under Admin Center -> Account -> Appearance -> Localization are a separate list and do NOT enable a Help Center language.
To see exactly what your Help Center accepts, open
https://<subdomain>.zendesk.com/api/v2/help_center/locales.jsonwhile signed in as an admin. Whatever that endpoint lists is what Lingo.dev will offer.A localization engine. Its glossary, brand voice, and rules are what your Help Center translations will follow.
The source language is not something you pick: Lingo.dev reads your Help Center's default language from Zendesk on every run.
Help Center already translated?
The first sync keeps the translations already in Zendesk. For each item and language, if Zendesk already has a complete translation, Lingo.dev leaves it as it is and translates only what is missing. To replace an existing translation, use Retranslate.
Connect Your Help Center#
Open the integration
Go to Studio -> All integrations and click Connect on the Zendesk card.
Fill in the form
| Field | What to enter |
|---|---|
| Name | What to call this connection, so you can tell your Help Centers apart |
| Help Center | Only the subdomain from your Zendesk URL. For https://acme.zendesk.com enter acme - the form shows .zendesk.com after it |
| Engine | The localization engine whose glossary, rules, and brand voice these translations follow |
| Mode | Draft writes translations as unpublished drafts, Publish makes them live as soon as they are written. See Drafts vs Published below |
Click Continue to Zendesk.
Authorize on Zendesk
Zendesk asks you to grant Lingo.dev access. Click Allow. Nothing is created until you do: click Deny and you land back on the form with no connection made.
Pick the languages
Back on Lingo.dev, you see the languages your Help Center has enabled, minus its default language. All of them are pre-selected. Untick any you do not want, then click Save and open.
If the Help Center has only one language, Lingo.dev asks you to add one in Zendesk first.
Choose What Gets Translated#
The connection page has five tabs: Categories, Sections, Articles, Workflow runs, and Settings.
The first three list the content of that kind, one row each, with a search box for names and IDs. Every row name links to that item in Zendesk, so you can check what you are picking. Each row has a Sync switch: turn it on and that item is part of the connection from then on. The change is saved the moment you flip it, there is no Save button. The switch in the table header turns Sync on or off for everything in the list.
The checkboxes are for one-off runs. Tick rows and two buttons appear, Queue sync (N) and Queue retranslation (N), which run just those rows without changing what has Sync on.
Nothing cascades
Turning on a category translates its own name and description, not the sections and articles under it. To cover a whole category, turn on its articles on the Articles tab as well. The header switch turns on everything listed, and you can untick what you do not want.
What gets translated#
| Item | Fields translated |
|---|---|
| Category | Title, description |
| Section | Title, description |
| Article | Title, body |
Article bodies are translated as HTML, so formatting, links, and embedded media survive the round trip.
Sync and Retranslate#
Two buttons, two different jobs:
| Button | What it does | When to use it |
|---|---|---|
| Sync | Translates only what changed since the last run | Routine updates. This is the one you want most of the time |
| Retranslate | Translates everything again, whether or not it changed | After changing your engine's glossary, brand voice, or rules, when you want existing translations regenerated |
Both live in the page header, where they cover everything with Sync on, and appear above the table when you tick rows, where they cover just those rows. Retranslate from the header asks you to confirm first, because every selected item and every language is charged for.
Runs are manual. Editing an article in Zendesk does not start one - you decide when to translate.
One run at a time per connection. Ask for another while one is running and it queues behind it; if the queue is full, try again once a run finishes.
Watch a Run#
The Workflow runs tab lists every run: when it started, what triggered it, which languages it covered, how long it took, and its status. A run that is still going has a Stop button. Open a row to see the result per language.
A run that ends as Up to date is not a failure. It means nothing had changed since the last run, which is the normal result of syncing twice without editing anything in between.
Where Translations Land#
Each translation is attached to the same article, section, or category as a per-locale version - Zendesk's own translation model. Your readers switch language in the Help Center and get it; nothing is duplicated or moved.
Drafts vs Published#
In Draft mode, translations arrive in Zendesk as unpublished drafts. Nothing is visible to your readers until someone reviews and publishes them in Zendesk. This is the mode to start with when your Help Center has no translations yet and you are evaluating quality.
In Publish mode, translations go live as soon as they are written.
Already published translations? Use Publish
In Draft mode, a translation Lingo.dev writes for a language that is already published becomes a draft of that language, and readers lose the live version until someone republishes it. If your Help Center already serves translations, pick Publish.
You can change the mode later on the Settings tab, along with your engine and target languages.
Settings#
The Settings tab shows which Help Center the connection reads and how much content has Sync on, and lets you change the name, the target languages, the engine, and the mode. Each change is saved as you make it.
If a language you picked is no longer enabled in Zendesk, the tab says so. Syncs skip that language, and the next change to the list drops it.
Disconnecting#
Disconnect at the bottom of the Settings tab stops Lingo.dev reading from and writing to the Help Center. It removes the connection, its run history, and the per-article record of what has already been translated. Translations already written stay in Zendesk - they belong to your Help Center, not to us.
Reconnecting
Reconnecting starts a new record of what has been translated. The first sync after reconnecting keeps the translations already in Zendesk, including the ones Lingo.dev wrote before, and translates only what is missing.
Limits#
| Limit | Detail |
|---|---|
| Content types | Categories, sections, and articles. Tickets, macros, themes, and community posts are not covered |
| Content blocks | Articles built from Zendesk content blocks are not translated |
| Triggers | Manual only - no webhook, no automatic sync when an article changes |
| Concurrent runs | One per connection; further requests queue behind it |
| Target languages | Must be enabled in your Zendesk Help Center before Lingo.dev can offer them |
| Connections | Several Help Centers per organization, each connected once |
Troubleshooting#
The Connect page says Zendesk is not on your plan. Zendesk comes with Enterprise. Reach out and we'll sort it out; everything already connected keeps working meanwhile.
The Connect page says you cannot connect this. Connecting needs a permission your role does not have. An organization admin can connect, or grant the permission to you.
A target language is missing from the list. Enable it in Zendesk under Knowledge -> Settings -> Language settings first, then reopen the Settings tab in Lingo.dev. The list is read from Zendesk each time.
After Allow, Lingo.dev asks you to add a language in Zendesk. The Help Center is written in one language and offers no other, so there is nothing to translate into yet.
A sync ends as Up to date. Either nothing changed since the last run, or nothing has Sync on yet. Turn on the content you want covered on the Categories, Sections, and Articles tabs.
Translations do not appear in the Help Center. Check whether the connection is in Draft mode. Drafts exist in Zendesk but stay invisible to readers until published.