Amazon Bedrock allows you to translate using the latest Amazon models such as Amazon Nova models. Amazon Bedrock can be used as a translation provider in Smartling, as part of a translation workflow or with any of Smartling's instant machine translation integrations.
Amazon Bedrock can be used either with an access key or using IAM role assumption.
Prerequisites
Before you begin, ensure you have the following:
- An AWS account with Amazon Bedrock enabled
- The desired Bedrock models enabled in your target region (e.g.,
us-east-1) - If you plan to use models from third-party providers on Amazon Bedrock, you may need to enable access to those models in your AWS account first
- For Anthropic models (Claude), you are required to submit the Anthropic use case details form in the AWS Bedrock console (Model catalog → select an Anthropic model → follow the prompts). Approval is typically instant. This is a one-time step per account.
Note: Additional prerequisites apply depending on the selected credential type.
Additional prerequisites for setting up with an access key:
- An AWS user with IAM policies that allow the use of Amazon Bedrock (i.e., AWS permission
bedrock:InvokeModel) - An AWS Access Key ID and Secret Key ID generated for that user. Refer to the Amazon documentation for more information.
Additional prerequisites for setting up with an IAM Role:
- IAM permissions to create roles and policies in your AWS account
- The following value from Smartling:
Smartling AWS Principal ARN:arn:aws:iam::108497063145:role/ai-proxy-service-prod-customer-assume-role— the IAM Role that Smartling's service uses to assume your role
Info: You must also have Account Owner access in Smartling to complete the setup process.
Supported models
All text models supported by Amazon Bedrock can be used in Smartling, provided your AWS credentials have access to them. Check the Amazon Bedrock documentation for a complete list of all models.
Supported languages
Amazon Bedrock models support numerous languages. Different models may have varying results and language coverage. Consult the documentation for your specific model to determine whether a language or specific locale is supported.
Setting up Amazon Bedrock credentials in Smartling
You will need to store your Amazon Bedrock credentials in Smartling in order to use an Amazon Bedrock model as a translation provider.
- From the top navigation of your Smartling dashboard, access the AI Hub.
- Navigate to the Credentials section.
- Follow the instructions outlined here to store your provider credentials in Smartling.
Credential types
Smartling supports two methods for authenticating with Amazon Bedrock:
| Credential Type | Description | When to Use |
| Access Key | Uses an AWS Access Key ID and Secret Access Key tied to an IAM user. | Quick setup; suitable for teams comfortable managing static credentials. |
| IAM Role | Smartling assumes a customer-managed IAM role using AWS STS. No static keys are stored. | Recommended for security-conscious teams; no long-lived credentials, access revocable instantly. |
Warning: Once created, the credential type cannot be changed.
Option A: Option A: Setting up with an access key
Step 1: Setup in Amazon
Once you have set up an AWS user with IAM policies that allow the use of Amazon Bedrock (i.e., AWS permission bedrock:InvokeModel), you can generate an Access Key ID and Secret Access Key, which you will need when creating the provider credential in Smartling.
Refer to the AWS documentation for instructions on generating access keys for your IAM user. Smartling-provisioned credentials are not available for Amazon Bedrock.
Step 2: Add provider credentials in Smartling
You will need to store your Amazon Bedrock credentials (Access Key ID and Secret Access Key) in Smartling in order to use an Amazon Bedrock model as a translation provider.
- From the top navigation of your Smartling dashboard, access the AI Hub.
- Navigate to the Credentials section.
- Follow the instructions outlined here to store your provider credentials in Smartling.
- Select Amazon Bedrock as your LLM provider, and "Access key" as your credential type.
- Complete all required fields, then save your credential.
Option B: Setting up with an IAM role
Instead of sharing long-lived AWS access keys, you create an IAM Role in your AWS account that trusts Smartling's AWS principal. Smartling assumes that role to obtain short-lived temporary credentials, then uses those to call Bedrock on your behalf.
This eliminates long-lived credentials and gives you full, instant control over access revocation.
Step 1: Create an IAM Policy for Bedrock Access
In the AWS Console, create a new policy named SmartlingBedrockAccessPolicy (or a name of your choice) with the following JSON. This grants Smartling permission to invoke Bedrock models on your behalf.
Note: Smartling accesses Bedrock models via both inference profiles (cross-region routed access, used for most chat/translation models) and foundation models (direct access, used for some embedding models). Your policy must cover both resource types.
You can scope the Resource to specific models (recommended for least-privilege), or use a wildcard (arn:aws:bedrock:*:*:foundation-model/*) to allow all models in a region.
Option A — All Bedrock models (recommended for getting started):
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowBedrockInvocation",
"Effect": "Allow",
"Action": [
"bedrock:InvokeModel"
],
"Resource": [
"arn:aws:bedrock:*::foundation-model/*",
"arn:aws:bedrock:*:<YOUR_ACCOUNT_ID>:inference-profile/*"
]
}
]
}Replace <YOUR_ACCOUNT_ID> with your AWS Account ID.
Note that inference profile ARNs use your own account ID, while foundation model ARNs have an empty account field (they are AWS-owned resources).
Option B — Scoped to specific models:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowBedrockInvocation",
"Effect": "Allow",
"Action": [
"bedrock:InvokeModel"
],
"Resource": [
"arn:aws:bedrock:*::foundation-model/anthropic.claude-sonnet-4-20250514-v1:0",
"arn:aws:bedrock:*:<YOUR_ACCOUNT_ID>:inference-profile/*anthropic.claude-sonnet-4*"
]
}
]
}Scoping to specific models is more secure but requires updating the policy when new models are added.
Step 2: Create an IAM Role with a Trust Policy
Create a new IAM role named SmartlingBedrockAccess (or a name of your choice) with the following trust policy:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowSmartlingAssumeRole",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::108497063145:role/ai-proxy-service-prod-customer-assume-role"
},
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals": {
"sts:ExternalId": "<YOUR_EXTERNAL_ID>"
}
}
}
]
}Replace the following placeholder value:
-
<YOUR_EXTERNAL_ID>— a unique string you generate (see below)
Note: The Smartling AWS Principal ARN shown above (arn:aws:iam::108497063145:role/ai-proxy-service-prod-customer-assume-role) is Smartling's production IAM role used for cross-account role assumption. This value must be used exactly as shown in the Principal field.
External ID (required)
The External ID is a unique string that you generate and include in both your trust policy and the configuration you provide to Smartling. It is required — Smartling will not accept credentials without it.
Why it is required: The External ID prevents the confused deputy problem, a security vulnerability where a third party could trick Smartling into accessing a role they control. AWS explicitly recommends requiring an External ID whenever a third party assumes roles in your account. See:
- AWS IAM User Guide: The confused deputy problem
- AWS IAM User Guide: How to use an external ID when granting access to your AWS resources to a third party
How to generate it: Use any unique, hard-to-guess string. Examples:
- A UUID:
550e8400-e29b-41d4-a716-446655440000 - A descriptive identifier:
smartling-bedrock-mycompany-prod-2026
The same External ID must be provided in both your trust policy (sts:ExternalId condition) and in the Smartling credentials configuration. If they don't match, role assumption will fail.
The role name can be anything you choose.
Step 3: Attach the Bedrock Policy to the Role
Attach the SmartlingBedrockAccessPolicy created in Step 1 to the SmartlingBedrockAccess role created in Step 2.
Step 4: Store the IAM Role Credential in Smartling
1. From the top navigation of your Smartling dashboard, access the AI Hub.
2. Navigate to Credentials tab.
3. Click "Add Credential" and select Amazon Bedrock as your LLM provider.
4. Select "IAM role" as the credential type.
Info: Once created, the credential type (Access key vs. IAM role) cannot be changed.
5. Enter a credential name and optional description.
6. In the Role ARN field, enter the full ARN of the role you created (e.g., arn:aws:iam::<YOUR_ACCOUNT_ID>:role/SmartlingBedrockAccess).
7. In the External ID field, enter the External ID you generated and used in the trust policy (required).
8. Under Region, specify the AWS region where Bedrock models are enabled (e.g., us-east-1).
9. Click Save to store your credential in Smartling.
Tip: IAM role access can be revoked anytime.
Step 5: Verify access with IAM role assumption
If you selected IAM role as your credential type, submit a test translation request after saving the credential in Smartling and creating an LLM Profile with it.
You can then verify in AWS CloudTrail that:
• sts:AssumeRole events appear from Smartling's principal (arn:aws:iam::108497063145:role/ai-proxy-service-prod-customer-assume-role)
• bedrock:InvokeModel events appear with the assumed role's identity
Filter by Event name → AssumeRole or InvokeModel, and narrow the time range to when the test request was made.
Creating an LLM Profile using Amazon Bedrock credentials
Once your provider credential is saved and tested successfully, create a Profile to configure translation settings. A Profile allows you to configure your translation prompt, as well as additional preferences to further customize the translation output.
- From the top navigation of your Smartling dashboard, access the AI Hub.
- Navigate to the Profiles page.
- Click Create Profile and select LLM Profile.
- Follow the steps 2-9 on How to create an LLM Profile.
- These steps guide you through creating an LLM Profile for Amazon Bedrock, optionally adjusting translation parameters, and configuring and testing your translation prompt using Prompt Tooling with RAG, along with other optional settings for customizing the translation output.
- In addition to these general steps, refer to the Amazon Bedrock–specific information below.
Amazon Bedrock-specific setup information
When creating the LLM Profile, you must enter the model ID or ARN of the Amazon Bedrock model you want to use for translation in the Bedrock model field.
This field tells the system which model to use when generating a response. The exact value you enter depends on the type of resource you're using:
From the Amazon Bedrock documentation
- If you use a base model, specify the model ID or its ARN. For a list of model IDs for base models, see Supported Regions and models for inference profiles.
- If you use an Amazon Bedrock Marketplace model, specify the ID or ARN of the marketplace endpoint that you created. For more information about Amazon Bedrock Marketplace and setting up an endpoint, see Amazon Bedrock Marketplace in the Amazon Bedrock User Guide.
- If you use an inference profile, specify the inference profile ID or its ARN. For a list of inference profile IDs, see Supported Regions and models for cross-region inference in the Amazon Bedrock User Guide.
- If you use a provisioned model, specify the ARN of the Provisioned Throughput. For more information, see Run inference using a Provisioned Throughput in the Amazon Bedrock User Guide.
- If you use a custom model, specify the ARN of the custom model deployment (for on-demand inference) or the ARN of your provisioned model (for Provisioned Throughput). For more information, see Use a custom model in Amazon Bedrock in the Amazon Bedrock User Guide.
Using an LLM Profile with Amazon Bedrock for translation
After creating the LLM Profile, you can use it to translate content within the Smartling platform (using an MT workflow or generating MT suggestions in the CAT Tool), or use the Profile with one of Smartling's MT integrations to display machine translations directly where needed, such as in connected third-party applications.
For more information, see Using the LLM Profile to translate your content.
Revoking IAM role access
You can revoke Smartling's access to your AWS account at any time by taking one of the following actions in the AWS Console:
• Delete or modify the IAM role's trust policy
• Delete the IAM role entirely
• Add a Deny statement to the role's trust policy
Note: Access revocation is immediate — no credential rotation or changes in Smartling are required.
Troubleshooting Amazon Bedrock translation issues
Common causes and solutions
Error appears on Profile page in the AI Hub
- Check if you've exceeded token or rate limits in your Amazon Bedrock account
- Verify your AWS user has the required permissions (e.g.,
bedrock:InvokeModel) and access to the selected model - Confirm your Access Key ID and Secret Access Key are still valid
Translations aren't appearing
- Verify that the LLM Profile has been added to your workflow's translation step or the Profile has been selected for your Instant MT integration
- Check for error messages on the Profiles page in the AI Hub
- Confirm if your fallback provider is working (if you have one configured)
Poor translation quality
- Review and refine your translation prompt and/or assess the quality of your linguistic assets if you are using Prompt Tooling with RAG. The quality of your linguistic assets is also crucial if you are using other features that reference your translation memory, glossary, and style guides, such as AI-Enhanced Glossary Term Insertion or TM Match Insertion.
- Verify that the target language is well supported by your chosen model. LLM providers like Amazon Bedrock typically produce better quality translation for high-resource languages than for less common, low-resource languages.
- Try a different Amazon Bedrock model
- Consider using Smartling's AI Toolkit features or add a human review step to your workflow
Considerations
Compared to traditional machine translation providers, LLMs like those offered through Amazon Bedrock provide more flexibility. However, they also come with a number of challenges that should be considered.
Read about important considerations for translating with LLMs in Translating with LLMs in Smartling.