Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Weblate translations API

The translations API from Weblate — 10 operation(s) for translations.

Weblate translations API is one of 21 APIs that Weblate publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include translations. The published artifact set on APIs.io includes an OpenAPI specification and API documentation.

This API exposes 16 operations across 10 paths, and defines 76 schemas. It is described by OpenAPI 3.1.1.

Requests are made against a single base URL, http:.

16 operations 10 paths 76 schemas 2 DELETE8 GET5 POST1 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.1.1
Base URL
https://hosted.weblate.org/api/
Authentication
API Key, API Key, API Key
Resource Areas
1

Authentication & Security 3

Weblate translations API declares 3 security schemes for authenticating requests. An API key is passed in the header as Bearer (bearerAuth). An API key is passed in the cookie as sessionid (cookieAuth). An API key is passed in the header as Token (tokenAuth).

  • bearerAuth — Token-based authentication with required prefix Bearer. - Each user has a personal access token which they can get from their respective user profile. These to…
  • cookieAuth — Session-based authentication used when user is signed in.
  • tokenAuth — Token-based authentication with required prefix Token. - Each user has a personal access token which they can get from their respective user profile. These tok…

Paths & Operations 16

Across 10 paths, the API surfaces 16 operations — 2 DELETE, 8 GET, 5 POST, 1 PUT. Each is listed below with its method, path, parameters, and response codes.

translations 16
GET
/api/translations/
Return a list of translations.
api_translations_list 2 params → 400401403404405406423429
GET
/api/translations/{component__project__slug}/{component__slug}/{language__code}/
Return information about a translation.
api_translations_retrieve 3 params → 400401403404405406423429
DELETE
/api/translations/{component__project__slug}/{component__slug}/{language__code}/
Delete a translation.
api_translations_destroy 3 params → 400401403404405406423429
GET
/api/translations/{component__project__slug}/{component__slug}/{language__code}/announcements/
Return announcements.
api_translations_announcements_list 5 params → 400401403404405406423429
POST
/api/translations/{component__project__slug}/{component__slug}/{language__code}/announcements/
Create an announcement.
api_translations_announcements_create 3 params body → 400401403404405406415423
DELETE
/api/translations/{component__project__slug}/{component__slug}/{language__code}/announcements/{announcement_id}/
Delete an announcement.
api_translations_announcements_destroy 4 params → 400401403404405406423429
POST
/api/translations/{component__project__slug}/{component__slug}/{language__code}/autotranslate/
Trigger automatic translation.
api_translations_autotranslate_create 3 params body → 400401403404405406415423
GET
/api/translations/{component__project__slug}/{component__slug}/{language__code}/changes/
Return a list of translation changes.
api_translations_changes_list 5 params → 400401403404405406423429
GET
/api/translations/{component__project__slug}/{component__slug}/{language__code}/file/
Download translation file.
api_translations_file_retrieve 3 params → 400401403404405406423429
POST
/api/translations/{component__project__slug}/{component__slug}/{language__code}/file/
Upload new file with translations.
api_translations_file_create 3 params body → 400401403404405406423429
PUT
/api/translations/{component__project__slug}/{component__slug}/{language__code}/file/
Upload new file with translations.
api_translations_file_update 3 params body → 400401403404405406423429
GET
/api/translations/{component__project__slug}/{component__slug}/{language__code}/repository/
Return information about VCS repository status.
api_translations_repository_retrieve 3 params → 400401403404405406423429
POST
/api/translations/{component__project__slug}/{component__slug}/{language__code}/repository/
Perform given operation on the VCS repository.
api_translations_repository_create 3 params body → 400401403404405406415423
GET
/api/translations/{component__project__slug}/{component__slug}/{language__code}/statistics/
Return detailed translation statistics.
api_translations_statistics_retrieve 3 params → 400401403404405406423429
GET
/api/translations/{component__project__slug}/{component__slug}/{language__code}/units/
Return a list of translation units.
api_translations_units_list 5 params → 400401403404405406423429
POST
/api/translations/{component__project__slug}/{component__slug}/{language__code}/units/
Add a new unit.
api_translations_units_create 3 params body → 400401403404405406415423

Schemas 76

The contract defines 76 schemas that model the data the API accepts and returns. The most detailed are Component (93 properties), Project (61 properties), Statistics (37 properties), Translation (33 properties). Each schema is shown below with its type and property counts.

ColorEnum
string
navy - Navy blue - Blue aqua - Aqua teal - Teal olive - Olive green - Green lime - Lime yellow - Yellow orange - Orange red - Red maroon - Maroon fuchsia - Fuc…
ErrorResponse404
object
2 properties 2 required
MethodEnum
string
translate - translate approve - approve suggest - suggest fuzzy - fuzzy replace - replace source - source add - add
ErrorResponse415
object
2 properties 2 required
PaginatedAnnouncementList
object
4 properties 2 required
Error401
object
3 properties 3 required
FileFormatEnum
string
apple-xliff - XLIFF 1.2 with Apple extensions appstore - App store metadata files arb - ARB file aresource - Android String Resource asciidoc - AsciiDoc file a…
ErrorResponse400TypeEnum
string
validationerror - Validation Error clienterror - Client Error
Change
object
13 properties 9 required
PriorityEnum
integer
60 - Very high 80 - High 100 - Medium 120 - Low 140 - Very low
ErrorCode500Enum
string
error - Error
NewUnitStateEnum
integer
0 - Empty 10 - Needs editing 11 - Needs editing (Needs rewriting) 12 - Needs editing (Needs checking) 20 - Translated 30 - Approved
CommitInfo
object
Detailed information about a Git commit.
12 properties
ErrorCode404Enum
string
notfound - Not Found
Error403
object
3 properties 3 required
SeverityEnum
string
info - Info (light blue) warning - Warning (yellow) danger - Danger (red) success - Success (green)
ErrorResponse429
object
2 properties 2 required
ErrorResponse400
object
2 properties 2 required
PendingUnits
object
Detailed breakdown of pending translation units.
4 properties 4 required
MergeStyleEnum
string
merge - Merge rebase - Rebase mergenoff - Merge without fast-forward
ErrorCode406Enum
string
notacceptable - Not Acceptable
Error415
object
3 properties 3 required
Label
object
4 properties 2 required
Error423
object
3 properties 3 required
MonolingualUnit
object
3 properties 2 required
PaginatedChangeList
object
4 properties 2 required
SourceEnum
integer
0 - Default plural 1 - gettext plural formula 3 - CLDR plural with zero 4 - CLDR v38+ plural 5 - Android plural 6 - Qt Linguist plural 2 - Manually entered for…
LanguagePlural
object
5 properties 2 required
FuzzyEnum
string
- process - process approve - approve
StringStateEnum
integer
0 - Empty 10 - Needs editing 11 - Needs editing (Needs rewriting) 12 - Needs editing (Needs checking) 20 - Translated 30 - Approved 100 - Read-only
Statistics
object
37 properties 33 required
Error429
object
3 properties 3 required
Error400
object
3 properties 3 required
NewUnitRequest
UploadResult
object
6 properties 6 required
ErrorResponse423
object
2 properties 2 required
ActionEnum
integer
0 - Resource updated 1 - Translation completed 2 - Translation changed 3 - Comment added 4 - Suggestion added 5 - Translation added 6 - Automatically translate…
ErrorResponse401
object
2 properties 2 required
RepoRequest
object
1 property 1 required
ErrorResponse406
object
2 properties 2 required
BlankEnum
Announcement
object
5 properties 2 required
Translation
object
33 properties 31 required
ErrorResponse403
object
2 properties 2 required
BilingualUnit
object
4 properties 2 required
ErrorCode401Enum
string
authenticationfailed - Authentication Failed notauthenticated - Not Authenticated
ErrorCode403Enum
string
permissiondenied - Permission Denied
DirectionEnum
string
- Automatically detect text direction ltr - Left to right rtl - Right to left
LanguageCodeStyleEnum
string
- Default based on the file format posix - POSIX style using underscore as a separator posixlowercase - POSIX style using underscore as a separator, lower case…
ServerErrorEnum
string
servererror - Server Error
ErrorCode415Enum
string
unsupportedmediatype - Unsupported Media Type
PaginatedTranslationList
object
4 properties 2 required
ConflictsEnum
string
- ignore - ignore replace-translated - replace-translated replace-approved - replace-approved
PaginatedUnitList
object
4 properties 2 required
VcsEnum
string
gerrit - Gerrit git - Git git-force-push - Git with force push local - No remote repository mercurial - Mercurial subversion - Subversion
ErrorResponse405
object
2 properties 2 required
OperationEnum
string
commit - Commit pull - Update pull-rebase - Update with rebase pull-merge - Update with merge pull-merge-noff - Update with merge without fast-forward push - P…
Unit
object
32 properties 21 required
ErrorCode429Enum
string
throttled - Throttled
UploadRequest
object
6 properties 1 required
Language
object
10 properties 6 required
BilingualSourceUnit
object
4 properties 1 required
NewLangEnum
string
contact - Contact maintainers url - Point to translation instructions URL add - Create new language file none - Disable adding new translations
Repository
object
Serializer for repository status information.
11 properties 4 required
Error406
object
3 properties 3 required
Error405
object
3 properties 3 required
Error500
object
3 properties 3 required
Component
object
93 properties 34 required
CommitPolicyEnum
integer
0 - Commit all translations regardless of quality 20 - Skip translations marked as needing editing 30 - Only include approved translations
RepositoryOperation
object
2 properties 1 required
Error404
object
3 properties 3 required
Project
object
61 properties 30 required
ErrorResponse500
object
2 properties 2 required
ErrorCode423Enum
string
repository-locked - Repository Locked component-locked - Component Locked unknown-locked - Unknown Locked
ErrorCode405Enum
string
methodnotallowed - Method Not Allowed
ClientErrorEnum
string
clienterror - Client Error

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

weblate-translations-api-openapi.yml Raw ↑

Other APIs Weblate publishes across the network.

Weblate addons API
Weblate categories API
Weblate changes API
Weblate component-lists API
Weblate components API
Weblate contributions API
Weblate groups API
Weblate hooks API
Weblate languages API
Weblate memory API
Weblate metrics API
Weblate projects API