Style GuidesAPIUpdate
Style Guide API: active-rule and AI-check limits per Content Group and Language
Each (Content Group, Language) pair now allows at most 50 active rules and 20 active rules with AI check enabled. Rules are counted whether linked directly to a Content Group/Language or viaallContentGroups/allLanguages.- Explicitly requesting
active: trueoraiCheckEnabled: truewhen a pair is already at its limit is rejected with409 Conflict(ACTIVE_RULE_LIMIT_REACHED/AI_CHECK_LIMIT_REACHED). - When these flags are omitted, the API now decides them automatically based on remaining room, instead of
always defaulting to
true. - Style Guide rule extraction respects the same limits: extracted rules beyond the remaining room are saved but left inactive, without affecting rules already active for that Content Group and Language.
StudioAPIUpdate
Studio API: AI model value quokka is now aita
The AI model name enums for the Update project settings endpoint (chatModelName, insightsModelName, and translationModelName) previously exposed the internal codename quokka. The AI Translation Agent is now selected with the value aita — a meaningful external name in line with the other options (plai, gpt-5-mini, gpt-4o-mini).- Use
aitawhen setting one of these fields to the AI Translation Agent. - The old
quokkavalue is still accepted for backward compatibility, but is no longer documented and may be removed in a future release.
Content GroupsAPINew feature
Content Groups API now available
The Content Groups API is now documented in the Developer Hub.Use it to manage content groups — organization-scoped collections that link platform objects such as projects, style guides, style rules, and AI quality checks together for coordinated workflows.StringsAPINew feature
Strings API: job automations can target multiple projects
Job automations previously acceptedproject_ids as an array but used only the first entry. You can now associate a job automation with multiple projects in a single call. Multi-project automations require the advanced_job_automation plan feature — accounts without it receive a 422 with project_ids in the error field.See the Strings API reference.StudioAPIUpdate
Studio API: clarified subtitle updates — words is the source of truth
The Update/Get Subtitle reference now spells out that a segment’s words array (word-level text and timings) is authoritative for both subtitle rendering and dubbing text-to-speech. The text field is only a human-readable mirror and is ignored when rendering or synthesizing.- To change what a segment says (for example, shortening a dubbing line before a redub), edit its
words— not justtext. - Never submit a segment with an empty
wordsarray: it is silently dropped the next time the track is read, and produces no dubbing audio. This is the usual cause of a track that “comes back empty” after an update. - The endpoint is a bulk replace: always send the full segment list, then list changed ids in
segmentsToRedubto regenerate their audio.
Quality EvaluatorAPIDeprecation
Quality Evaluator API: v1 CRUD and v2 endpoints deprecated
All v1 AI Check CRUD endpoints (GET/POST /v1/aiChecks, GET/PUT/DELETE /v1/aiChecks/{uid}), v1 Quality Profile CRUD endpoints, PUT /v2/aiChecks/{uid}, and POST /v2/evaluation are now flagged as deprecated in the OpenAPI spec. Migrate to the v3 Content Group–based endpoints:POST /v3/evaluationfor evaluating segments.GET /v3/qualityProfiles/{contentGroupId}for resolving a Quality Profile from a Content Group.
StringsAPINew feature
Strings API: link and unlink keys with content strategies
The Key Links endpoints now cover the full lifecycle of shared translations between a parent key and its children:- Link child keys — designate a parent and attach one or more children so their translations derive from the parent.
- List child keys — retrieve the full link record for a parent, including all attached children.
- Unlink a single child — detach one child; its translations inherit the parent’s current content and are marked unverified for reviewer confirmation.
- Batch unlink — detach several children in one request, or dissolve the entire group with
unlink_parent: true. - Content strategy on unlink — choose
keep_content(default; copies the parent’s translations into each detached child) orremove_content(clears them).
StringsAPIUpdate
Strings API: document list search is now a prefix match
Theq parameter on List documents now performs a case-insensitive prefix match on the document name instead of a substring match. For example, q=invoice returns documents whose names start with “invoice”, not those that merely contain it. If you relied on the previous substring behavior, adjust your queries accordingly.The Delete document, Get screenshot, and Delete screenshot endpoints also received clearer descriptions and error contracts. See the Strings API reference.StringsAPINew feature
Strings API: assign a Language AI profile per locale
Locales now accept an optionallanguage_ai_profile identifier when you create or update a locale. The selected profile drives Language AI behavior for that locale, and the assigned profile is returned on the locale resource.See the Strings API reference.StringsAPIUpdate
Strings API: prefix-based locale downloads
Locale download requests now accept two related options in the request body:translation_key_prefix— strip the given prefix from key names in the exported file.filter_by_prefix— whentrue, only export keys that matchtranslation_key_prefix, and remove the prefix from the output.
ConnectorsAPINew feature
Connectors API: full reference for all seven connectors
The Connectors API reference now documents every supported connector end-to-end, not just Contentful. Available connectors:- Files — sync localizable files from arbitrary file sources.
- GitHub — connect repositories to TMS projects.
- Braze — pull content blocks and email templates for translation.
- Contentful — sync entries and assets.
- Google Drive — translate documents stored in Drive.
- Tridion Docs — exchange content with Tridion Docs.
- Optimizely — localize Optimizely content.
StringsAPINew feature
Strings API: review due dates on jobs
Job responses now include areview_due_date field so you can see when a job’s review stage is due. The field returns null when the project does not have the review workflow enabled.See the Strings API reference.StringsAPIUpdate
Strings API: branch comparison response schema
The branch comparison endpoint now returns a fully described response. For each resource type (translation keys, translations, locales, tags), the response lists changes made on the base branch, changes made on the feature branch, and any conflicts — making it easier to surface branch diffs and resolve merges programmatically.See the Strings API reference.Quality EvaluatorAPINew feature
Quality Evaluator API v3: Content Group–based evaluation
Quality Evaluator now resolves AI Checks and Quality Profiles dynamically from Content Groups, so a single call applies the right checks for the target content:- Evaluate against a Content Group —
POST /v3/evaluationevaluates segments using the AI Checks resolved from the suppliedcontentGroupId. When no checks are associated, segments are returned with an emptyresultsarray instead of an error. - Resolve a Quality Profile —
GET /v3/qualityProfiles/{contentGroupId}returns the Quality Profile resolved for a Content Group. - Restrict AI Checks to specific locales —
PUT /v2/aiChecks/{uid}accepts an optionallocalesfield so a check can be limited to certain target locales. Omit the field to preserve existing restrictions, or send an empty array to clear them.
/v1/aiChecks*), Quality Profile CRUD endpoints (/v1/qualityProfiles*), and POST /v2/evaluation are now deprecated. Migrate to the v3 Content Group–based endpoints. See the Quality Evaluator API introduction.StringsAPINew feature
Strings API: name your repo syncs
Repo syncs now support an optionalname field (up to 100 characters) so you can give each sync a custom display name. When the name is null or blank, the sync continues to display using its associated project name. Set name when creating or updating a repo sync to make repository connections easier to identify in lists and dashboards.See the Strings API reference.StudioAPINew feature
Studio API: update projects and manage recording subtitles
Three new endpoints expand what you can do with the Studio API:- Update project settings —
PATCH /v1/projects/{id}partially updates AI model preferences, TTS provider, translation memory / MT profile assignment, and sharing visibility. Only the fields you send are changed. - Get recording subtitles —
GET /v1/projects/{projectId}/recordings/{recordingId}/subtitlesreturns the segmented subtitle for a recording. - Update recording subtitles —
PUT /v1/projects/{projectId}/recordings/{recordingId}/subtitleswrites subtitle segments back to a recording.
TMSAPINew feature
TMS API: link projects to content groups
Three new TMS endpoints let you manage a project’s content group association:GET /api2/v1/projects/{projectUid}/contentGroup— get the content group linked to a project.POST /api2/v1/projects/{projectUid}/contentGroup— link a project to a content group.DELETE /api2/v1/projects/{projectUid}/contentGroup— unlink a project from its content group.
TMSQuality EvaluatorUpdate
TMS: quality evaluation moved under projects, plus segment warnings storage
The endpoint that triggers AI quality evaluation has moved to a project-scoped path:- New:
POST /api2/v1/projects/{projectUid}/jobs/evaluateQuality - Replaces:
POST /api2/v1/qualityProfiles/evaluate
POST /api2/v1/qualityProfiles/segmentWarnings endpoint also lets you store evaluation warnings for a job part. Update any integrations that called the previous endpoint. See the TMS API reference.StringsAPIUpdate
Strings API: larger upload size for unmentioned-key reporting
When you upload translations, the response field that counts keys not mentioned in the upload is now calculated for uploads up to 100,000 keys (previously 10,000). Larger uploads still report0.See the Strings API reference.PlatformSCIMAPI
SCIM endpoints moved to the Platform API
SCIM user provisioning is now part of the Phrase Platform API at/scim/... (for example, GET /scim/Users, POST /scim/Users, GET /scim/ServiceProviderConfig). The previous /api2/v1/scim/... paths under TMS have been removed.Point your SCIM identity provider at the Platform endpoints. See the Platform API reference.StringsAPINew feature
Strings API: fall back to another locale for unverified translations
Locale download endpoints accept a new optional query parameter,fallback_for_unverified_translations. When true, translations in a non-final state are replaced by the fallback locale’s translation at export time:- In the simple workflow, “non-final” means
unverified. - In the review workflow, it also includes
translated(awaiting review).
fallback_locale_id or use_locale_fallback to be set. See the Strings API reference.StringsAPIUpdate
Strings API: Identify how jobs were created
Job responses in the Strings API now include two new fields so you can see where a job came from:automation_id— the ID of the automation that created the job, ornullif it was created manuallyjob_template_id— the ID of the job template the job was created from, ornullif no template was used
MCP ServerStringsNew feature
MCP Server v0.10.0: Strings Repo Sync
The Phrase MCP Serverv0.10.0 adds Repo Sync tools for Strings, so you can manage repository synchronization between Strings projects and Git repositories directly from your MCP client.See the MCP Server guide for full details.TMSNew feature
TMS: Quality estimation warnings and translation memory alignment
Two new TMS API endpoints are available:- Quality estimation warnings —
POST /api2/v1/qualityProfiles/qeWarningsreturns AI-generated QE warnings for selected job parts, paginated by segment. - Translation memory alignment —
POST /api2/v2/transMemories/{transMemoryUid}/alignaligns supplied source and target files using the TM’s source locale and returns an aligned XLSX file.
TMSQuality EvaluatorUpdate
Quality evaluation: lock and confirm passing segments
The TMS endpoint that triggers AI quality evaluation accepts two new optional parameters:lockSegments(defaulttrue) — locks segments that pass all AI checks.confirmSegments(defaultfalse) — confirms segments that pass all AI checks.
Style GuidesNew API
Style Guides API
The Style Guide API is now public. Manage organization-wide writing guidelines through the API: create and update Markdown style guides per language, version every revision, search and filter, and bulk-delete.See the Style Guides API Reference to get started.MCP ServerTMSNew feature
MCP Server v0.9.0: Analysis and Quotes for TMS
The Phrase MCP Serverv0.9.0 now supports the TMS Analysis and Quotes APIs. New tools let you create and manage analyses and quotes directly from your MCP client.See the MCP Server guide for full details.MCP ServerStringsNew feature
MCP Server v0.8.0: Strings screenshots
The Phrase MCP Serverv0.8.0 adds screenshot support for Strings with new create_screenshot and create_screenshot_marker tools, so you can attach visual context to keys directly from your MCP client.See the MCP Server guide for full details.MCP ServerNew feature
MCP Server v0.7.0: Google Drive connector, Quality Evaluator, and base64 uploads
The Phrase MCP Serverv0.7.0 adds several new capabilities:- Google Drive connector — manage Google Drive connector resources from the MCP Server
- Quality Evaluator — evaluate translation quality through new Quality Evaluator tools
- Base64 file uploads — file upload tools now accept base64-encoded
file_contentas an alternative tofile_path
Quality EvaluatorAPI
Quality Evaluator API
The new Quality Evaluator API enables automated, AI-powered assessment of translation quality. Define quality requirements in natural language, group them into reusable profiles, and evaluate translation segments at scale.- AI Checks — create custom checks from natural language quality requirements
- Quality Profiles — group AI Checks into reusable profiles
- Analytics — track evaluation metrics and AI unit consumption over time
MCP ServerTMSNew feature
MCP Server: Termbase and Translation Memory management
The Phrase MCP Server now supports managing Termbases and Translation Memories in TMS. New tools are available for:- Termbases — list, get details, search, import, and export
- Translation Memories — list, get details, search, import, and export
MCP ServerBreaking change
MCP Server package renamed
The Phrase MCP Server npm package has been renamed and is now published under the@phrase organization.Before:phrase-mcp-server package is no longer maintained.See the MCP Server quick start for full configuration examples.