The official Java SDK for the Smartling Translation Management Platform. This library provides a type-safe, idiomatic Java interface to Smartling's REST APIs, enabling seamless integration of translation workflows into your applications.
- Automatic OAuth 2.0 Management - Built-in token acquisition, refresh, and secure credential handling
- Type-Safe API Clients - Strongly-typed interfaces with comprehensive error handling
- Multi-Module Architecture - Include only the API modules you need to minimize dependencies
- Production Ready - Battle-tested by hundreds of enterprise integrations with comprehensive test coverage
- Modern Java Support - Built with RESTEasy, Jackson, and Apache HttpClient
- Java 8 or higher (JDK 1.8+)
- Maven 3.6+ or Gradle 5.0+
- RESTEasy 4.7.10 (JAX-RS client implementation)
- Jackson 2.15.4 (JSON serialization)
- Apache HttpClient 4.5.14 (HTTP transport)
- SLF4J 1.7.28 (Logging facade)
Add the SDK to your pom.xml:
<dependency> <groupId>com.smartling.api</groupId> <artifactId>smartling-api-sdk</artifactId> <version>1.26.2</version> </dependency>Add the SDK to your build.gradle:
dependencies{implementation 'com.smartling.api:smartling-api-sdk:1.26.2' }The SDK automatically manages OAuth 2.0 authentication when you provide your API credentials:
importcom.smartling.api.files.v2.FilesApi; importcom.smartling.api.files.v2.FilesApiFactory; importcom.smartling.api.v2.authentication.AuthenticationApi; importcom.smartling.api.v2.authentication.AuthenticationApiFactory; importcom.smartling.api.v2.client.ClientFactory; importcom.smartling.api.v2.client.DefaultClientConfiguration; importcom.smartling.api.v2.client.auth.Authenticator; importcom.smartling.api.v2.client.auth.BearerAuthSecretFilter; publicclassSmartlingExample{publicstaticvoidmain(String[] args){StringuserIdentifier = "YOUR_USER_IDENTIFIER"; StringuserSecret = "YOUR_USER_SECRET"; // Create a factory for building API clientsDefaultClientConfigurationclientConfiguration = DefaultClientConfiguration.builder().build(); ClientFactoryclientFactory = newClientFactory(); // Create the authenticator to be used by subsequent API callsAuthenticationApiauthenticationApi = newAuthenticationApiFactory(clientFactory).buildApi(clientConfiguration); Authenticatorauthenticator = newAuthenticator(userIdentifier, userSecret, authenticationApi); // Create files API clientFilesApifilesApi = newFilesApiFactory(clientFactory) .buildApi(newBearerAuthSecretFilter(authenticator), clientConfiguration); // Use the API client// ... } }For detailed examples and tutorials, visit our samples repository.
- Minimum Java Version: Java 8 (JDK 1.8)
- End of Support: December 1, 2026
- Status: Stable and production-ready
- Minimum Java Version: Java 17 (JDK 17)
- Release: Coming soon
- Migration Guide: Will be provided upon release
We recommend planning your migration to Java 17+ to ensure continued support beyond 2026.
- API Reference - Complete REST API documentation
- Java SDK Guide - SDK-specific documentation and best practices
- Help Center - API guides and tutorials
- Code Samples - Working examples and integration patterns
- Bug Reports: GitHub Issues
- Feature Requests: GitHub Issues
- Security Issues: Please report privately to [email protected]
We welcome contributions from the community! Before submitting significant changes:
- Open an issue to discuss your proposed changes with the maintainers
- Fork the repository and create a feature branch
- Ensure all tests pass and add new tests for your changes
- Submit a pull request with a clear description of your changes
For Smartling employees, please refer to the internal wiki for contribution guidelines.
This project is licensed under the Apache License 2.0.
Smartling | Website | API Documentation