PUT/v2/projects/{projectId}

Replace project settings

Replaces the settings for a project identified by its numeric ID. Include all required settings in each request; optional fields let you set the base language, namespace, description, and slug, among other settings.

1 parameter · 11 body fields
projectIdintegerrequired
The numeric ID of the project whose settings to replace.

Project settings to replace. The icuPlaceholders, name, suggestionsMode, translationProtection, useBranching, and useNamespaces fields are required.

baseLanguageIdintegeroptional
ID of the project's base language.
defaultNamespaceIdintegeroptional
ID of the project's default namespace.
descriptionstringoptional
Project description. Must be 3–2000 characters.
icuPlaceholdersbooleanrequired
Whether to use ICU placeholder visualization in the editor and it's support.
namestringrequired
Project name. Must be 3–50 characters.
slugstringoptional
Project URL slug. Must be 3–60 characters and match the specified lowercase letters, numbers, and hyphens pattern.
suggestionsModestringrequired
Suggestions can be DISABLED (hidden from UI) or ENABLED (visible in the UI)
Allowed:DISABLEDENABLED
translationProtectionstringrequired
Protects reviewed translations, so translators can't change them by default and others will receive warning.
Allowed:NONEPROTECT_REVIEWED
unassignConflictingTmsbooleanoptional
When true, the request is allowed to unassign shared translation memories whose source language differs from the new base language. Without this flag, such a conflict is rejected with `cannot_change_project_base_language_tm_conflict`. The frontend should only set this after the user explicitly confirms in the conflict dialog.
useBranchingbooleanrequired
Whether branching is enabled for the project.
useNamespacesbooleanrequired
Whether namespaces are enabled for the project.

5 status codes
200Returns the updated project object, including its ID, settings, language and permission details, and other project metadata.
avatarobjectoptional
baseLanguageobjectoptional
computedPermissionobjectrequired
defaultNamespaceobjectoptional
descriptionstringoptional
directPermissionobjectoptional
icuPlaceholdersbooleanrequired
Whether to disable ICU placeholder visualization in the editor and it's support.
idintegerrequired
namestringrequired
organizationOwnerobjectoptional
organizationRolestringoptional
Allowed:MEMBEROWNERMAINTAINER
publicbooleanrequired
Whether the project is public — discoverable and open to community suggestions
slugstringoptional
suggestionsModestringrequired
Suggestions for translations
Allowed:DISABLEDENABLED
translationProtectionstringrequired
Level of protection of translations
Allowed:NONEPROTECT_REVIEWED
useBranchingbooleanrequired
useNamespacesbooleanrequired
useQaChecksbooleanrequired
400Returned when the request is malformed, a required field is missing, or a value fails validation.
codestringrequired
Allowed:unauthenticatedapi_access_forbiddenapi_key_not_foundinvalid_api_keyinvalid_project_api_keyproject_api_key_expiredbad_credentialsmfa_enabledinvalid_otp_codemfa_not_enabledcan_not_revoke_own_permissionsdata_corrupted
paramsarray<object>optional
401Returned when the request is not authenticated.
codestringrequired
Allowed:unauthenticatedapi_access_forbiddenapi_key_not_foundinvalid_api_keyinvalid_project_api_keyproject_api_key_expiredbad_credentialsmfa_enabledinvalid_otp_codemfa_not_enabledcan_not_revoke_own_permissionsdata_corrupted
paramsarray<object>optional
403Returned when the authenticated user cannot update the project.
codestringrequired
Allowed:unauthenticatedapi_access_forbiddenapi_key_not_foundinvalid_api_keyinvalid_project_api_keyproject_api_key_expiredbad_credentialsmfa_enabledinvalid_otp_codemfa_not_enabledcan_not_revoke_own_permissionsdata_corrupted
paramsarray<object>optional
404Returned when the project was not found.
codestringrequired
Allowed:unauthenticatedapi_access_forbiddenapi_key_not_foundinvalid_api_keyinvalid_project_api_keyproject_api_key_expiredbad_credentialsmfa_enabledinvalid_otp_codemfa_not_enabledcan_not_revoke_own_permissionsdata_corrupted
paramsarray<object>optional

Error handling

A 400 is returned when the request is malformed or a value fails validation. A 401 indicates that the request is not authenticated, a 403 indicates that the authenticated user cannot update the project, and a 404 indicates that the project was not found. The body must include icuPlaceholders, name, suggestionsMode, translationProtection, useBranching, and useNamespaces; name must be 3–50 characters, and suggestionsMode and translationProtection must use their listed values.