OpenAPI Specification
openapi: 3.1.0
info:
title: SimpleLocalize Customers Projects 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: Projects
description: Manage translation projects
paths:
/api/v2/projects:
get:
operationId: listProjects
summary: List Projects
description: Retrieves all existing projects with their metadata, language configurations, and translation statistics. Requires Personal Token authentication.
tags:
- Projects
security:
- BearerAuth: []
responses:
'200':
description: Projects retrieved successfully
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectListResponse'
'401':
description: Unauthorized - invalid or missing Personal Token
post:
operationId: createProject
summary: Create Project
description: Creates a new translation project and returns project details including API tokens and initial configuration. Requires Personal Token authentication.
tags:
- Projects
security:
- BearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateProjectRequest'
responses:
'200':
description: Project created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectResponse'
'400':
description: Invalid request body
'401':
description: Unauthorized - invalid or missing Personal Token
components:
schemas:
ProjectListResponse:
type: object
properties:
status:
type: integer
message:
type: string
data:
type: array
items:
$ref: '#/components/schemas/Project'
ProjectResponse:
type: object
properties:
status:
type: integer
message:
type: string
data:
$ref: '#/components/schemas/Project'
CreateProjectRequest:
type: object
required:
- name
properties:
name:
type: string
description: Project name
Project:
type: object
properties:
id:
type: string
description: Project unique identifier
name:
type: string
description: Project display name
apiKey:
type: string
description: Project-specific API key
createdAt:
type: string
format: date-time
languages:
type: array
items:
$ref: '#/components/schemas/Language'
translationCount:
type: integer
Language:
type: object
properties:
key:
type: string
description: Unique language identifier (max 20 chars)
name:
type: string
description: Display name for the language (max 200 chars)
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/