How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
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 22 APIs that Weblate publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Translation. 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.2.0.

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.2.0
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/
Api translations list
api_translations_list 2 params → 400401403404405406423429
GET
/api/translations/{component__project__slug}/{component__slug}/{language__code}/
Api translations retrieve
api_translations_retrieve 3 params → 400401403404405406423429
DELETE
/api/translations/{component__project__slug}/{component__slug}/{language__code}/
Api translations destroy
api_translations_destroy 3 params → 400401403404405406423429
GET
/api/translations/{component__project__slug}/{component__slug}/{language__code}/announcements/
Api translations announcements list
api_translations_announcements_list 5 params → 400401403404405406423429
POST
/api/translations/{component__project__slug}/{component__slug}/{language__code}/announcements/
Api translations announcements create
api_translations_announcements_create 3 params body → 400401403404405406415423
DELETE
/api/translations/{component__project__slug}/{component__slug}/{language__code}/announcements/{announcement_id}/
Api translations announcements destroy
api_translations_announcements_destroy 4 params → 400401403404405406423429
POST
/api/translations/{component__project__slug}/{component__slug}/{language__code}/autotranslate/
Api translations autotranslate create
api_translations_autotranslate_create 3 params body → 400401403404405406415423
GET
/api/translations/{component__project__slug}/{component__slug}/{language__code}/changes/
Api translations changes list
api_translations_changes_list 5 params → 400401403404405406423429
GET
/api/translations/{component__project__slug}/{component__slug}/{language__code}/file/
Api translations file retrieve
api_translations_file_retrieve 3 params → 400401403404405406423429
POST
/api/translations/{component__project__slug}/{component__slug}/{language__code}/file/
Api translations file create
api_translations_file_create 3 params body → 400401403404405406423429
PUT
/api/translations/{component__project__slug}/{component__slug}/{language__code}/file/
Api translations file update
api_translations_file_update 3 params body → 400401403404405406423429
GET
/api/translations/{component__project__slug}/{component__slug}/{language__code}/repository/
Api translations repository retrieve
api_translations_repository_retrieve 3 params → 400401403404405406423429
POST
/api/translations/{component__project__slug}/{component__slug}/{language__code}/repository/
Api translations repository create
api_translations_repository_create 3 params body → 400401403404405406415423
GET
/api/translations/{component__project__slug}/{component__slug}/{language__code}/statistics/
Api translations statistics retrieve
api_translations_statistics_retrieve 3 params → 400401403404405406423429
GET
/api/translations/{component__project__slug}/{component__slug}/{language__code}/units/
Api translations units list
api_translations_units_list 5 params → 400401403404405406423429
POST
/api/translations/{component__project__slug}/{component__slug}/{language__code}/units/
Api translations units create
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.

StringStateEnum
integer
0 - Empty 10 - Needs editing 11 - Needs editing (Needs rewriting) 12 - Needs editing (Needs checking) 20 - Translated 30 - Approved 100 - Read-only
MergeStyleEnum
string
merge - Merge rebase - Rebase mergenoff - Merge without fast-forward
BilingualUnit
object
4 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…
ErrorCode405Enum
string
methodnotallowed - Method Not Allowed
Error405
object
3 properties 3 required
VcsEnum
string
gerrit - Gerrit git - Git git-force-push - Git with force push local - No remote repository mercurial - Mercurial subversion - Subversion
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
ErrorCode429Enum
string
throttled - Throttled
PaginatedTranslationList
object
4 properties 2 required
ErrorResponse415
object
2 properties 2 required
Error401
object
3 properties 3 required
ClientErrorEnum
string
clienterror - Client Error
Announcement
object
5 properties 2 required
Error406
object
3 properties 3 required
Error423
object
3 properties 3 required
Statistics
object
37 properties 33 required
BlankEnum
NewUnitRequest
Repository
object
Serializer for repository status information.
11 properties 4 required
ErrorCode415Enum
string
unsupportedmediatype - Unsupported Media Type
MethodEnum
string
translate - translate approve - approve suggest - suggest fuzzy - fuzzy replace - replace source - source add - add
ConflictsEnum
string
- ignore - ignore replace-translated - replace-translated replace-approved - replace-approved
Project
object
61 properties 30 required
SeverityEnum
string
info - Info (light blue) warning - Warning (yellow) danger - Danger (red) success - Success (green)
BilingualSourceUnit
object
4 properties 1 required
MonolingualUnit
object
3 properties 2 required
CommitInfo
object
Detailed information about a Git commit.
12 properties
ErrorCode406Enum
string
notacceptable - Not Acceptable
Language
object
10 properties 6 required
ErrorResponse429
object
2 properties 2 required
PriorityEnum
integer
60 - Very high 80 - High 100 - Medium 120 - Low 140 - Very low
ErrorCode401Enum
string
authenticationfailed - Authentication Failed notauthenticated - Not Authenticated
Error400
object
3 properties 3 required
Translation
object
33 properties 31 required
ErrorCode500Enum
string
error - Error
PaginatedAnnouncementList
object
4 properties 2 required
ErrorResponse403
object
2 properties 2 required
Error429
object
3 properties 3 required
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…
ServerErrorEnum
string
servererror - Server Error
NewUnitStateEnum
integer
0 - Empty 10 - Needs editing 11 - Needs editing (Needs rewriting) 12 - Needs editing (Needs checking) 20 - Translated 30 - Approved
Label
object
4 properties 2 required
Error415
object
3 properties 3 required
UploadResult
object
6 properties 6 required
RepositoryOperation
object
2 properties 1 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…
PendingUnits
object
Detailed breakdown of pending translation units.
4 properties 4 required
ErrorResponse423
object
2 properties 2 required
DirectionEnum
string
- Automatically detect text direction ltr - Left to right rtl - Right to left
PaginatedUnitList
object
4 properties 2 required
NewLangEnum
string
contact - Contact maintainers url - Point to translation instructions URL add - Create new language file none - Disable adding new translations
FuzzyEnum
string
- process - process approve - approve
RepoRequest
object
1 property 1 required
ErrorCode423Enum
string
repository-locked - Repository Locked component-locked - Component Locked unknown-locked - Unknown Locked
UploadRequest
object
6 properties 1 required
ErrorResponse406
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…
ErrorCode403Enum
string
permissiondenied - Permission Denied
LanguagePlural
object
5 properties 2 required
Change
object
13 properties 9 required
Unit
object
32 properties 21 required
ErrorResponse500
object
2 properties 2 required
Error404
object
3 properties 3 required
ErrorResponse405
object
2 properties 2 required
Error500
object
3 properties 3 required
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…
ErrorResponse404
object
2 properties 2 required
Error403
object
3 properties 3 required
ErrorResponse400
object
2 properties 2 required
PaginatedChangeList
object
4 properties 2 required
ErrorResponse401
object
2 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…
ErrorCode404Enum
string
notfound - Not Found
ErrorResponse400TypeEnum
string
validationerror - Validation Error 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 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
Weblate Roles API
Where this information came from

This is an independent, third-party profile of Weblate Translations API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.