SimpleLocalize Translations API
Manage translation strings across languages and namespaces
Manage translation strings across languages and namespaces
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/simplelocalize-translations-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: SimpleLocalize Customers Translations API
description: The SimpleLocalize API is a REST API for managing translations, languages, projects, and customers. It enables developers to create, read, update, and delete translations programmatically, import and export translation files in 30+ formats, auto-translate using DeepL, Google Translate, or OpenAI, and publish translations to CDN for use in web, mobile, and backend applications.
version: v2
contact:
name: SimpleLocalize Support
url: https://simplelocalize.io/contact/
termsOfService: https://simplelocalize.io/terms-of-service/
license:
name: Commercial
url: https://simplelocalize.io/terms-of-service/
servers:
- url: https://api.simplelocalize.io
description: SimpleLocalize Production API
security:
- ApiKeyAuth: []
tags:
- name: Translations
description: Manage translation strings across languages and namespaces
paths:
/api/v2/translations:
get:
operationId: listTranslations
summary: List Translations
description: Retrieve translations with filtering and pagination. Supports filtering by key, language, namespace, text content, review status, and customer ID. Returns paginated results with up to 500 items per page.
tags:
- Translations
parameters:
- name: text
in: query
description: Search translated text using case-insensitive partial matching
required: false
schema:
type: string
- name: textStatus
in: query
description: Filter by translation completeness
required: false
schema:
type: string
enum:
- EMPTY
- NOT_EMPTY
- name: reviewsStatus
in: query
description: Filter by review status
required: false
schema:
type: string
enum:
- REVIEWED
- NOT_REVIEWED
- name: key
in: query
description: Exact match filter for translation key
required: false
schema:
type: string
- name: namespace
in: query
description: Exact match filter for translation namespace
required: false
schema:
type: string
- name: language
in: query
description: Exact match filter for language identifier
required: false
schema:
type: string
- name: customerId
in: query
description: Filter for customer-specific translations
required: false
schema:
type: string
- name: page
in: query
description: Pagination page number
required: false
schema:
type: integer
default: 0
- name: size
in: query
description: Results per page (maximum 500)
required: false
schema:
type: integer
default: 100
maximum: 500
responses:
'200':
description: Translations retrieved successfully
content:
application/json:
schema:
$ref: '#/components/schemas/TranslationListResponse'
'401':
description: Unauthorized - invalid or missing API key
'429':
description: Rate limit exceeded
/api/v1/translations:
post:
operationId: createOrUpdateTranslation
summary: Create or Update Translation
description: Creates a new translation or updates an existing one. Supports upsert semantics - if the translation key already exists for the given language and namespace, it will be updated.
tags:
- Translations
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/TranslationRequest'
responses:
'200':
description: Translation created or updated successfully
content:
application/json:
schema:
$ref: '#/components/schemas/TranslationResponse'
'400':
description: Invalid request body
'401':
description: Unauthorized - invalid or missing API key
'429':
description: Rate limit exceeded
components:
schemas:
TranslationResponse:
type: object
properties:
status:
type: integer
description: HTTP status code
message:
type: string
description: Response message
data:
$ref: '#/components/schemas/Translation'
TranslationListResponse:
type: object
properties:
status:
type: integer
message:
type: string
data:
type: array
items:
$ref: '#/components/schemas/Translation'
page:
type: integer
totalPages:
type: integer
totalElements:
type: integer
Translation:
type: object
properties:
key:
type: string
description: Translation key identifier
namespace:
type: string
description: Translation namespace for organizing keys
language:
type: string
description: Language identifier (e.g., en, fr, de)
text:
type: string
description: The translated text
reviewStatus:
type: string
description: Review status of the translation
enum:
- REVIEWED
- NOT_REVIEWED
customerId:
type: string
description: Associated customer identifier for customer-specific translations
modifiedAt:
type: string
format: date-time
description: Timestamp of last modification
TranslationRequest:
type: object
required:
- key
- language
properties:
key:
type: string
description: Translation key identifier
namespace:
type: string
description: Translation namespace
language:
type: string
description: Target language identifier
text:
type: string
description: Translated text content
securitySchemes:
ApiKeyAuth:
type: apiKey
in: header
name: X-SimpleLocalize-Token
description: Project API key from Settings > Credentials > API Key
BearerAuth:
type: http
scheme: bearer
description: Personal Token for Projects API. Generated in account settings.
externalDocs:
description: SimpleLocalize API Documentation
url: https://simplelocalize.io/docs/api/get-started/