Skip to content

feat: add AI File Translation methods for Crowdin and Crowdin Enterprise#640

Merged
andrii-bodnar merged 3 commits intomasterfrom
copilot/add-ai-file-translation-methods
Mar 19, 2026
Merged

feat: add AI File Translation methods for Crowdin and Crowdin Enterprise#640
andrii-bodnar merged 3 commits intomasterfrom
copilot/add-ai-file-translation-methods

Conversation

Copy link
Contributor

Copilot AI commented Mar 19, 2026

Adds SDK support for the AI File Translation endpoints (start, status, cancel, download file, download strings) for both Crowdin (user-scoped) and Crowdin Enterprise (organization-scoped).

New methods

Crowdin (/users/{userId}/ai/file-translations)

  • startAiUserFileTranslation(userId, request)
  • getAiUserFileTranslationStatus(userId, jobIdentifier)
  • cancelAiUserFileTranslation(userId, jobIdentifier)
  • downloadAiUserFileTranslation(userId, jobIdentifier)
  • downloadAiUserFileTranslationStrings(userId, jobIdentifier)

Crowdin Enterprise (/ai/file-translations)

  • startAiOrganizationFileTranslation(request)
  • getAiOrganizationFileTranslationStatus(jobIdentifier)
  • cancelAiOrganizationFileTranslation(jobIdentifier)
  • downloadAiOrganizationFileTranslation(jobIdentifier)
  • downloadAiOrganizationFileTranslationStrings(jobIdentifier)

New types (AiModel)

  • AiFileTranslationRequeststorageId + targetLanguageId required; optional sourceLanguageId, type, parserVersion, tmIds, glossaryIds, aiPromptId/aiProviderId/aiModelId, instructions, attachmentIds
  • AiFileTranslationAttribute — status payload shape (stage, error, downloadName, source/target language IDs, file metadata)

Usage

const job = await api.startAiUserFileTranslation(userId, {
    storageId: 123,
    targetLanguageId: 'uk',
});

const status = await api.getAiUserFileTranslationStatus(userId, job.data.identifier);

// When finished:
const file = await api.downloadAiUserFileTranslation(userId, job.data.identifier);
const strings = await api.downloadAiUserFileTranslationStrings(userId, job.data.identifier);

// Or cancel:
await api.cancelAiUserFileTranslation(userId, job.data.identifier);
Original prompt

This section details on the original issue you should resolve

<issue_title>Add support for AI File Translation methods</issue_title>
<issue_description>The Crowdin API has been extended with new AI File Translation endpoints in the AI section, including operations to start translation, check translation status, cancel translation, download translated file, and download translated strings.

The Crowdin API client libraries should be updated to support these methods so developers can run and manage file-based AI translation workflows directly from SDKs.

References:

Comments on the Issue (you are @copilot in this section)


💬 Send tasks to Copilot coding agent from Slack and Teams to turn conversations into code. Copilot posts an update in your thread when it's finished.

Co-authored-by: andrii-bodnar <29282228+andrii-bodnar@users.noreply.github.com>
Copilot AI changed the title [WIP] Add support for AI file translation methods feat: add AI File Translation methods Mar 19, 2026
Copilot AI requested a review from andrii-bodnar March 19, 2026 10:33
@andrii-bodnar andrii-bodnar marked this pull request as ready for review March 19, 2026 10:33
@codecov
Copy link

codecov bot commented Mar 19, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 89.99%. Comparing base (477a249) to head (3051029).
⚠️ Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #640      +/-   ##
==========================================
+ Coverage   89.85%   89.99%   +0.15%     
==========================================
  Files          41       41              
  Lines        2126     2156      +30     
  Branches      254      254              
==========================================
+ Hits         1910     1940      +30     
  Misses         82       82              
  Partials      134      134              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Co-authored-by: andrii-bodnar <29282228+andrii-bodnar@users.noreply.github.com>
Copilot AI changed the title feat: add AI File Translation methods feat: add AI File Translation methods for Crowdin and Crowdin Enterprise Mar 19, 2026
@andrii-bodnar andrii-bodnar merged commit a21d35b into master Mar 19, 2026
10 checks passed
@andrii-bodnar andrii-bodnar deleted the copilot/add-ai-file-translation-methods branch March 19, 2026 10:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add support for AI File Translation methods

2 participants