Manage and inspect localization projects within LingoHub workspaces.
All endpoints are served under the /v1 API prefix and return application/json responses.
Authentication is required for every endpoint. Workspace- and project-scoped operations are additionally guarded by team-based permissions.
Endpoints
GET /v1/projects -- List all projects
GET /v1/projects -- List all projectsRetrieves all projects accessible to the authenticated user — including projects they own and projects they collaborate on — across all workspaces.
| Detail | Value |
|---|---|
| Auth | Authenticated user |
| Response | 200 — list of projects with self links |
GET /v1/{workspaceUrl}/projects/status -- Translation status overview
GET /v1/{workspaceUrl}/projects/status -- Translation status overviewReturns every project in the specified workspace together with per-locale translation status counts, broken down by segment status:
NOT_TRANSLATEDDRAFTTRANSLATEDPREFILLEDAPPROVED
Tip: This endpoint is ideal for building dashboards or monitoring overall translation progress across projects.
| Detail | Value |
|---|---|
| Auth | generalView permission on the workspace |
| Path Param | workspaceUrl — URL slug of the workspace |
| Response | 200 — array of projects with status maps |
GET /v1/{workspaceUrl}/projects/{projectUrl} -- Project details
GET /v1/{workspaceUrl}/projects/{projectUrl} -- Project detailsFetches detailed information for a single project, including:
- Title and description
- Configured project locales (e.g.
"en","de","zh-Hant") - Owner email
- HATEOAS links to
selfandresources created_at/updated_attimestamps
| Detail | Value |
|---|---|
| Auth | generalView permission on the project |
| Path Params | workspaceUrl, projectUrl |
| Response | 200 — V1DetailedProjectInfo object |
GET /v1/{workspaceUrl}/projects/{projectUrl}/status -- Resource file status
GET /v1/{workspaceUrl}/projects/{projectUrl}/status -- Resource file statusProvides a comprehensive status overview of the project's resource files:
- Resource containers (files) with per-locale segment status counts
- Supported export formats (e.g.
strings.ios,xml.android.resources) - Repository connection states for GitHub, Bitbucket, Azure, and GitLab — including whether pushing is possible
Use case: Determine translation completeness per file and verify that repository integrations are properly configured.
| Detail | Value |
|---|---|
| Auth | resourcesView permission on the project |
| Path Params | workspaceUrl, projectUrl |
| Response | 200 — V1ResourceFileResponse with files, formats, and connections |
POST /v1/{workspaceUrl}/projects -- Create a project
POST /v1/{workspaceUrl}/projects -- Create a projectCreates a new localization project within the specified workspace.
Required fields:
| Field | Type | Description |
|---|---|---|
title | string | Name of the project |
resourceType | string | File format / resource type identifier |
sourceLanguageCode | string | BCP 47 language code of the source locale |
Optional fields:
| Field | Type | Description |
|---|---|---|
description | string | Short description of the project |
targetLanguageCodes | string[] | List of target locale codes |
| Detail | Value |
|---|---|
| Auth | settingsManage permission on the workspace |
| Path Param | workspaceUrl — URL slug of the workspace |
| Response | 200 — newly created V1DetailedProjectInfo object |
Common Error Responses
| Status | Meaning |
|---|---|
401 | Unauthorized — authentication credentials are missing or invalid |
403 | Forbidden — insufficient permissions for the requested operation |
404 | Not Found — the specified workspace or project does not exist |
422 | Unprocessable Entity — validation failed (create endpoint only) |
