Skip to content
Nav

API Reference

The Langsys API provides a RESTful interface for managing translations, projects, and organizations. This page covers the essentials — for full endpoint details, see the interactive API documentation.

https://api.langsys.dev

The API supports two authentication methods. Every endpoint accepts at least one of these — most accept both.

Project API keys are designed for integrating Langsys into your own apps and websites. Pass the key in the X-Authorization header:

X-Authorization: YOUR_PROJECT_API_KEY

Keys are scoped to a single project and come in two modes:

  • Read mode — fetch translations, list available languages, and access utility endpoints
  • Write mode — everything in read mode, plus the ability to create new translatable items and translations

This is the right choice when you need to pull translations into your frontend, sync content from a CMS, or submit new strings programmatically.

You can create and manage project API keys from Project Settings → API Keys.

User tokens grant access to any API endpoint that the authenticated user has permission to use — including organization management, billing, project configuration, and all translation operations.

Pass the token in the Authorization header:

Authorization: Bearer YOUR_TOKEN

Tokens are obtained via the POST /auth/login endpoint and are suited for admin tools, CI/CD pipelines, or when connecting through an MCP client.

Project API KeyUser Bearer Token
HeaderX-AuthorizationAuthorization: Bearer
ScopeSingle projectAll user permissions
AccessTranslations, utilitiesAll endpoints
Use caseApp/site integrationAdmin tools, CI/CD, MCP
Created fromProject Settings → API KeysPOST /auth/login
PlanRequests per hour
Free100
Pro1,000
Enterprise10,000

Rate limit headers are included in every response:

  • X-RateLimit-Limit — your plan’s hourly limit
  • X-RateLimit-Remaining — requests remaining in the current window

All responses return JSON with a consistent structure.

{
"success": true,
"data": {},
"message": "Operation completed successfully"
}
{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "The given data was invalid",
"details": {
"field": ["The field is required"]
}
}
}

Common error codes:

  • VALIDATION_ERROR — invalid input data
  • UNAUTHORIZED — missing or invalid token
  • NOT_FOUND — resource does not exist
  • RATE_LIMIT_EXCEEDED — too many requests
MethodEndpointDescription
GET/organizationsList organizations
POST/organizationsCreate organization
GET/organizations/{id}Get organization
MethodEndpointDescription
GET/projectsList projects
POST/projectsCreate project
GET/projects/{id}Get project
PUT/projects/{id}Update project
MethodEndpointDescription
GET/translatable-itemsList translatable items
POST/translatable-itemsCreate item
GET/translatable-items/{id}Get item
PUT/translatable-items/{id}Update item
MethodEndpointDescription
GET/translationsList translations
POST/translationsCreate translation
GET/translations/{id}Get translation
PUT/translations/{id}Update translation

For the complete list of endpoints with parameters, request bodies, and response schemas, see the interactive API docs.

Feedback