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 projects API

The projects API from Weblate — 20 operation(s) for projects.

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

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

This API exposes 33 operations across 20 paths, and defines 74 schemas. It is described by OpenAPI 3.2.0.

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

33 operations 20 paths 74 schemas 4 DELETE16 GET2 PATCH9 POST2 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 projects 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 33

Across 20 paths, the API surfaces 33 operations — 4 DELETE, 16 GET, 2 PATCH, 9 POST, 2 PUT. Each is listed below with its method, path, parameters, and response codes.

projects 33
GET
/api/projects/
Return a list of all projects.
api_projects_list 2 params → 400401403404405406423429
POST
/api/projects/
Create a new project.
api_projects_create body → 400401403404405406415423
GET
/api/projects/{slug}/
Return information about a project.
api_projects_retrieve 1 param → 400401403404405406423429
PUT
/api/projects/{slug}/
Edit a project by a PUT request.
api_projects_update 1 param body → 400401403404405406415423
PATCH
/api/projects/{slug}/
Edit a project by a PATCH request.
api_projects_partial_update 1 param body → 400401403404405406415423
DELETE
/api/projects/{slug}/
Delete a project.
api_projects_destroy 1 param → 400401403404405406423429
POST
/api/projects/{slug}/addons/
Translation projects API.
api_projects_addons_create 1 param body → 400401403404405406415423
GET
/api/projects/{slug}/announcements/
Return announcements.
api_projects_announcements_list 3 params → 400401403404405406423429
POST
/api/projects/{slug}/announcements/
Create an announcement.
api_projects_announcements_create 1 param body → 400401403404405406415423
DELETE
/api/projects/{slug}/announcements/{announcement_id}/
Delete an announcement.
api_projects_announcements_destroy 2 params → 400401403404405406423429
GET
/api/projects/{slug}/categories/
Return categories for a project.
api_projects_categories_list 3 params → 400401403404405406423429
GET
/api/projects/{slug}/changes/
Return a list of project changes.
api_projects_changes_list 3 params → 400401403404405406423429
GET
/api/projects/{slug}/components/
Return a list of translation components in the given project.
api_projects_components_list 3 params → 400401403404405406423429
POST
/api/projects/{slug}/components/
Create translation components in the given project.
api_projects_components_create 1 param body → 400401403404405406423429
GET
/api/projects/{slug}/credits/
Return contributor credits for a project.
api_projects_credits_retrieve 1 param → 400401403404405406423429
GET
/api/projects/{slug}/file/
Download all translation files in the project.
api_projects_file_retrieve 1 param → 400401403404405406423429
GET
/api/projects/{slug}/labels/
Return labels for a project.
api_projects_labels_list 3 params → 400401403404405406423429
POST
/api/projects/{slug}/labels/
Create a label for a project.
api_projects_labels_create 1 param body → 400401403404405406415423
DELETE
/api/projects/{slug}/labels/{label_id}/
Delete a label from a project.
api_projects_labels_destroy 2 params → 400401403404405406423429
GET
/api/projects/{slug}/languages/
Return statistics for all languages within a project.
api_projects_languages_list 1 param → 400401403404405406423429
GET
/api/projects/{slug}/languages/{language_code}/announcements/
Return project language announcements.
api_projects_languages_announcements_list 4 params → 400401403404405406423429
POST
/api/projects/{slug}/languages/{language_code}/announcements/
Create a project language announcement.
api_projects_languages_announcements_create 2 params body → 400401403404405406415423
DELETE
/api/projects/{slug}/languages/{language_code}/announcements/{announcement_id}/
Delete a project language announcement.
api_projects_languages_announcements_destroy 3 params → 400401403404405406423429
GET
/api/projects/{slug}/languages/{language_code}/file/
Download all component translation files in the project for a specific language.
api_projects_languages_file_retrieve 2 params → 400401403404405406423429
GET
/api/projects/{slug}/lock/
Return project lock status.
api_projects_lock_retrieve 1 param → 400401403404405406423429
POST
/api/projects/{slug}/lock/
Sets project lock status.
api_projects_lock_create 1 param body → 400401403404405406415423
GET
/api/projects/{slug}/machinery_settings/
List machinery settings for a project.
api_projects_machinery_settings_retrieve 1 param → 400401403404405406423429
POST
/api/projects/{slug}/machinery_settings/
Install a new machinery service.
api_projects_machinery_settings_create 1 param body → 401403404405406415423429
PUT
/api/projects/{slug}/machinery_settings/
Replace configuration for all services.
api_projects_machinery_settings_update 1 param body → 401403404405406415423429
PATCH
/api/projects/{slug}/machinery_settings/
Partially update a single service. Leave configuration blank to remove the service.
api_projects_machinery_settings_partial_update 1 param body → 401403404405406415423429
GET
/api/projects/{slug}/repository/
Return information about VCS repository status.
api_projects_repository_retrieve 1 param → 400401403404405406423429
POST
/api/projects/{slug}/repository/
Perform given operation on the VCS repository.
api_projects_repository_create 1 param body → 400401403404405406415423
GET
/api/projects/{slug}/statistics/
Return statistics for a project.
api_projects_statistics_retrieve 1 param → 400401403404405406423429

Schemas 74

The contract defines 74 schemas that model the data the API accepts and returns. The most detailed are Component (93 properties), ProjectComponent (92 properties), Project (61 properties), PatchedProject (61 properties). Each schema is shown below with its type and property counts.

PatchedSingleServiceConfig
object
2 properties
NewLangEnum
string
contact - Contact maintainers url - Point to translation instructions URL add - Create new language file none - Disable adding new translations
PriorityEnum
integer
60 - Very high 80 - High 100 - Medium 120 - Low 140 - Very low
ServerErrorEnum
string
servererror - Server Error
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…
Project
object
61 properties 30 required
PaginatedProjectComponentList
object
4 properties 2 required
PaginatedAnnouncementList
object
4 properties 2 required
Error500
object
3 properties 3 required
PaginatedLabelList
object
4 properties 2 required
PaginatedProjectList
object
4 properties 2 required
ErrorCode415Enum
string
unsupportedmediatype - Unsupported Media Type
PaginatedChangeList
object
4 properties 2 required
ErrorCode401Enum
string
authenticationfailed - Authentication Failed notauthenticated - Not Authenticated
ProjectLock
object
1 property 1 required
DirectionEnum
string
- Automatically detect text direction ltr - Left to right rtl - Right to left
Language
object
10 properties 6 required
Repository
object
Serializer for repository status information.
11 properties 4 required
Statistics
object
37 properties 33 required
ErrorResponse404
object
2 properties 2 required
ErrorResponse500
object
2 properties 2 required
Change
object
13 properties 9 required
ErrorCode423Enum
string
repository-locked - Repository Locked component-locked - Component Locked unknown-locked - Unknown Locked
ErrorResponse403
object
2 properties 2 required
CommitInfo
object
Detailed information about a Git commit.
12 properties
ProjectComponent
object
92 properties 33 required
Label
object
4 properties 2 required
ErrorResponse429
object
2 properties 2 required
ErrorCode406Enum
string
notacceptable - Not Acceptable
PendingUnits
object
Detailed breakdown of pending translation units.
4 properties 4 required
ErrorCode403Enum
string
permissiondenied - Permission Denied
LockRequest
object
1 property 1 required
Error429
object
3 properties 3 required
Error415
object
3 properties 3 required
Component
object
93 properties 34 required
Error406
object
3 properties 3 required
ErrorCode500Enum
string
error - Error
ErrorResponse423
object
2 properties 2 required
BlankEnum
ActionEnum
integer
0 - Resource updated 1 - Translation completed 2 - Translation changed 3 - Comment added 4 - Suggestion added 5 - Translation added 6 - Automatically translate…
VcsEnum
string
gerrit - Gerrit git - Git git-force-push - Git with force push local - No remote repository mercurial - Mercurial subversion - Subversion
SingleServiceConfig
object
2 properties 2 required
SeverityEnum
string
info - Info (light blue) warning - Warning (yellow) danger - Danger (red) success - Success (green)
Error405
object
3 properties 3 required
PaginatedCategoryList
object
4 properties 2 required
RepositoryOperation
object
2 properties 1 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…
ErrorCode429Enum
string
throttled - Throttled
MessageResponse
object
1 property 1 required
ErrorResponse406
object
2 properties 2 required
ErrorCode404Enum
string
notfound - Not Found
CommitPolicyEnum
integer
0 - Commit all translations regardless of quality 20 - Skip translations marked as needing editing 30 - Only include approved translations
Error400
object
3 properties 3 required
LanguagePlural
object
5 properties 2 required
ErrorResponse400TypeEnum
string
validationerror - Validation Error clienterror - Client Error
MergeStyleEnum
string
merge - Merge rebase - Rebase mergenoff - Merge without fast-forward
Announcement
object
5 properties 2 required
PatchedProject
object
61 properties
Error423
object
3 properties 3 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…
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…
ErrorResponse415
object
2 properties 2 required
ClientErrorEnum
string
clienterror - Client Error
ErrorResponse400
object
2 properties 2 required
ErrorResponse405
object
2 properties 2 required
RepoRequest
object
1 property 1 required
ProjectMachinerySettings
object
1 property
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…
Error404
object
3 properties 3 required
Error401
object
3 properties 3 required
ErrorResponse401
object
2 properties 2 required
Error403
object
3 properties 3 required
Category
object
43 properties 19 required
ErrorCode405Enum
string
methodnotallowed - Method Not Allowed

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

weblate-projects-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 roles API
Where this information came from

This is an independent, third-party profile of Weblate projects 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.