SimpleLocalize Translations API

Manage translation strings across languages and namespaces

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/simplelocalize-translations-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

simplelocalize-translations-api-openapi.yml Raw ↑
openapi: 3.1.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:
    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
    TranslationResponse:
      type: object
      properties:
        status:
          type: integer
          description: HTTP status code
        message:
          type: string
          description: Response message
        data:
          $ref: '#/components/schemas/Translation'
    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
    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
  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/