Engineering

Translation Automation Tools: Webhooks, APIs, and CI/CD Integration for Localization

Eray Gündoğmuş
Eray Gündoğmuş
·9 min read
Share
Translation Automation Tools: Webhooks, APIs, and CI/CD Integration for Localization

Translation Automation Tools: Webhooks, APIs, and CI/CD Integration for Localization

Key Takeaways

  • Translation automation eliminates manual file transfer and coordination between developers and translators
  • The three primary automation approaches are: webhook-triggered workflows, CLI-based CI/CD integration, and API-driven custom automation
  • Most modern TMS platforms offer REST APIs and webhook support, but the depth of CI/CD integration varies significantly
  • Effective automation requires handling edge cases: partial translations, merge conflicts, concurrent branches, and rollback scenarios
  • The goal is a workflow where developers never manually manage translation files — everything flows through the pipeline

Online Translation Tools vs Developer Translation Tools

The term "translator tools" means different things to different audiences. Understanding the distinction between consumer-facing online translation tools and developer-oriented translation automation tools helps you find the right solution for your use case.

Online Translation Tools for General Use

Online translation tools — Google Translate, DeepL, Microsoft Translator, and similar services — are designed for individuals who need to understand or produce text in another language. You paste text into a web interface, select a target language, and receive a translation instantly. These tools are optimized for convenience and broad language coverage. They work well for reading a foreign-language article, drafting an email in another language, or getting the gist of a document.

What online translation tools do not do is manage translation at scale. They have no concept of translation memory (reusing previously approved translations), no glossary enforcement (ensuring your brand terms are translated consistently), no review workflows (routing translations to human reviewers before publishing), and no integration with your codebase or CMS.

Developer Translation Tools for Software Teams

Developer translator tools are built for a fundamentally different workflow. Instead of translating ad-hoc text, they manage the translation of structured content — UI strings, CMS entries, documentation — across an entire product lifecycle. The key capabilities that separate developer tools from consumer online translation tools:

  • Codebase integration: Developer tools connect to your Git repository, CMS, or CI/CD pipeline. Translations flow in and out of your codebase automatically, not via copy-paste.
  • Translation memory: Every approved translation is stored and reused. When the same string appears in a new context, the tool suggests the approved translation instantly, saving cost and ensuring consistency.
  • Glossary and terminology management: Brand terms, product names, and technical jargon are defined once and enforced across all translations and all languages.
  • Review workflows: Translations pass through configurable review stages before reaching production. Marketing copy might require human review, while UI strings with high confidence scores can be auto-approved.
  • File format support: Developer tools handle the specific formats your codebase uses — JSON, YAML, PO, XLIFF, iOS .strings, Android XML, Flutter ARB — not just plain text.
  • Automation: Webhooks, CLI tools, and APIs enable fully automated translation pipelines where new strings are detected, translated, reviewed, and merged without manual intervention.

Bridging the Gap

Some teams start with online translation tools for quick translations and later realize they need the workflow, memory, and integration features of developer tools. The transition usually happens when one of these pain points becomes acute: translating the same strings repeatedly (no translation memory), inconsistent terminology across pages or features (no glossary), or spending engineering time manually moving translation files between systems (no automation).

Better i18n bridges both worlds. Its AI translation engine provides the instant translation speed of online tools, while its platform layer adds translation memory, brand glossary enforcement (auto-synced to DeepL), review workflows, Git sync, CLI tooling, and a REST API with 200+ endpoints. Teams use it as both a translator tool for quick ad-hoc translations and a full automation platform for continuous localization.


Why Automate Translation Workflows?

Manual translation workflows create friction at every step:

  1. Developer extracts new strings and exports a file
  2. Developer uploads the file to the TMS or sends it to translators
  3. Translator translates and exports the completed file
  4. Developer downloads and integrates the translated file
  5. Developer checks for formatting issues, missing keys, and placeholder errors

Each handoff introduces delays, errors, and coordination overhead. According to the Globalization and Localization Association (GALA), organizations that automate localization workflows report faster release cycles and fewer localization-related bugs.

Automation Approaches

1. Webhook-Triggered Workflows

Webhooks enable event-driven automation — when something changes, an action is triggered automatically.

Common webhook patterns:

Source content changed → push to TMS:

Git push (new/changed strings)
  → Webhook triggers TMS import
  → Translators notified of new content
  → Translation begins immediately

Translation completed → pull to repo:

Translation marked complete in TMS
  → Webhook triggers CI job
  → CI pulls translated files
  → Creates PR with updated translations
  → Automated checks run (formatting, completeness)

Advantages:

  • Real-time — actions happen immediately when events occur
  • No polling overhead — the TMS notifies your system
  • Flexible — webhooks can trigger any downstream action

Considerations:

  • Requires webhook endpoint (serverless function or CI webhook trigger)
  • Must handle duplicate/retry events idempotently
  • Network reliability affects delivery

2. CLI-Based CI/CD Integration

CLI tools integrate translation sync directly into your build and deployment pipeline.

Push on merge to main:

# GitHub Actions example
on:
  push:
    branches: [main]
    paths: ['src/locales/en/**']

jobs:
  sync-translations:
    steps:
      - uses: actions/checkout@v4
      - name: Push source strings
        run: |
          npx better-i18n push --source en

Pull before deployment:

# Pull latest translations during build
jobs:
  build:
    steps:
      - uses: actions/checkout@v4
      - name: Pull translations
        run: npx better-i18n pull --all-locales
      - name: Build application
        run: npm run build

Scheduled sync:

# Daily translation sync
on:
  schedule:
    - cron: '0 6 * * *'  # 6 AM UTC daily

jobs:
  sync:
    steps:
      - name: Pull and commit translations
        run: |
          npx better-i18n pull --all-locales
          git add src/locales/
          git diff --staged --quiet || git commit -m "chore: sync translations"
          git push

Advantages:

  • Runs in existing CI/CD infrastructure
  • Version-controlled — all changes tracked in Git
  • Testable — translation checks run alongside other CI checks
  • Predictable — runs on defined triggers

Considerations:

  • Requires CI/CD platform (GitHub Actions, GitLab CI, etc.)
  • CLI tool must be installed in CI environment
  • Authentication tokens need secure storage

3. API-Driven Custom Automation

REST APIs enable custom automation workflows tailored to specific needs.

Common API automation patterns:

  • Translation status dashboard: Query API for real-time completion status across languages
  • Pre-release checks: API call to verify all translations are complete before deployment
  • Automated key creation: New feature flags automatically create placeholder translations
  • Quality monitoring: Periodically check translation quality metrics via API

Example: Pre-deployment translation check:

async function checkTranslationsReady(locale: string): Promise<boolean> {
  const response = await fetch(`${TMS_API}/projects/${PROJECT}/languages/${locale}/status`, {
    headers: { 'Authorization': `Bearer ${API_TOKEN}` }
  });
  const status = await response.json();
  return status.completionPercentage >= 95;
}

Handling Edge Cases

Partial Translations

Not all strings will be translated simultaneously. Your automation should handle:

  • Fallback strategy: Missing translations fall back to source language
  • Threshold deployment: Only deploy a locale when it reaches a minimum completion percentage
  • Progressive rollout: Deploy partially translated locales to a subset of users first

Branch-Aware Translation

When working with feature branches:

  • Branch isolation: Translations for a feature branch don't leak into main
  • Branch merging: When the feature merges, its translations merge too
  • Conflict resolution: Handle cases where the same key is modified in different branches

Rollback Scenarios

When a deployment needs to be rolled back:

  • Translation files versioned in Git: Standard git revert works
  • TMS state: Consider whether TMS state needs to be reverted (usually not — translations are additive)
  • Cache invalidation: If using CDN-cached translations, ensure cache is invalidated on rollback

Comparing Platform Automation Capabilities

CapabilityWebhookCLI/CIAPICommon Support
Source file pushAutomatic on Git pushCI stepCustom scriptMost platforms
Translation pullOn completion eventScheduled/triggeredCustom scriptMost platforms
Branch awarenessPlatform-dependentVia Git branchCustom logicLimited
Pre-deploy checksVia webhook chainCI gate stepAPI querySome platforms
Key extraction from codeN/ACLI scan commandN/ASome platforms
Auto-PR creationCI step after webhookCI stepCustom scriptVia CI/CD
Translation completeness gateEvent-basedCI checkAPI queryMost platforms

Building a Complete Automation Pipeline

A fully automated localization pipeline combines multiple approaches:

Developer writes code with translation keys
  ↓
CI extracts new keys (CLI scan)
  ↓
CI pushes source strings to TMS (CLI push)
  ↓
TMS notifies translators (automatic)
  ↓
Translators work in TMS editor
  ↓
Translation completed → webhook fires
  ↓
CI pulls translations, runs QA checks
  ↓
PR created with updated translation files
  ↓
PR merged after review
  ↓
Deployment includes latest translations
  ↓
Monitoring confirms translations render correctly

Getting Started with Automation

Step 1: Identify Your Bottleneck

Before automating, identify where time is wasted:

  • Manual file uploads/downloads? → CLI push/pull
  • Waiting for translations to complete? → Webhook notifications
  • Missing translations in production? → CI completeness checks
  • Coordination emails? → Automated status reports via API

Step 2: Start Small

Begin with the highest-impact automation:

  1. CI push on merge — ensures source strings are always current
  2. Scheduled pull — daily sync keeps translations fresh
  3. Pre-deploy check — prevents shipping incomplete translations

Step 3: Expand Gradually

Add more automation as your workflow matures:

  • Branch-aware translation workflows
  • Automated QA checks (placeholder validation, length limits)
  • Translation status dashboards
  • Automated reviewer assignment

FAQ

Do I need webhooks if I have CI/CD integration?

Not necessarily. CI/CD-based pull (scheduled or triggered on merge) covers most use cases. Webhooks add value when you need real-time reactions to TMS events (e.g., instant deployment when translations complete).

How do I handle translation keys that are removed from code?

Most CLI tools support a "purge" or "cleanup" command that removes keys from the TMS that no longer exist in the source code. Run this periodically or as part of your CI pipeline to keep translations in sync with code.

What if translations are updated while a deployment is in progress?

Use a "snapshot" approach: pull translations at the start of the build process and use that snapshot for the entire deployment. New translations will be included in the next deployment cycle.

How do I test translations in staging environments?

Pull translations as part of your staging build process, the same way you do for production. Some platforms support branch-aware translations, allowing you to test feature-specific translations in staging before merging.

Guide based on common patterns across modern TMS platforms as of March 2026.