API REST de Weblate¶
L’API és accessible a l’URL /api/ i es basa en el marc de Django REST. Podeu utilitzar-lo directament o per Weblate Client.
L’API també està documentada mitjançant l’OpenAPI 3.1 a l’URL /api/schema/, podeu navegar a /api/docs/.
Nota
L’OpenAPI està disponible com a vista prèvia de les funcions. El més probable és que la documentació estigui incompleta en aquest moment i estigui subjecta a canvis. Si us plau, consulteu la documentació següent per obtenir informació més detallada sobre l’API.
Autenticació i paràmetres genèrics¶
L’API de només lectura està disponible sense autenticació tret que REQUIRE_LOGIN estigui activat. Les sol·licituds no autenticades estan molt limitades (per defecte a 100 sol·licituds per dia), per la qual cosa es recomana utilitzar l’autenticació.
The authentication uses a token, which you can get in your profile. Use it in
the Authorization header:
- ANY /¶
Generic request behaviour for the API, the headers, status codes and parameters here apply to all endpoints as well.
- Query Parameters:
format – Response format (overrides Accept). Possible values depend on REST framework setup, by default
json,csvandapiare supported. The latter provides a web browser interface for the API.page – Returns given page of paginated results (use next and previous fields in response to automate the navigation).
page_size – Return the given number of items per request. The default is 50 and the maximum is 1000. For the units endpoints the default is 100 with a maximum of 10000. The default value is also configurable using the PAGE_SIZE setting.
- Request Headers:
Authorization – optional token to authenticate as
Authorization: Token YOUR-TOKEN
- Response Headers:
Content-Type – this depends on Accept header of request
Allow – list of allowed HTTP methods on object
- Response JSON Object:
detail (string) – verbose description of the result (for HTTP status codes other than 200 OK)
count (int) – total item count for object lists
next (string) – next page URL for object lists
previous (string) – previous page URL for object lists
results (array) – results for object lists
url (string) – URL to access this resource using the API
web_url (string) – URL to access this resource using web browser
- Status Codes:
200 OK – when request was correctly handled
201 Created – when a new object was created successfully
204 No Content – when an object was deleted successfully
400 Bad Request – when form parameters are missing
403 Forbidden – when access is denied
429 Too Many Requests – when throttling is in place
Authentication tokens¶
Canviat a la versió 4.10: Els testimonis de l’àmbit del projecte es van introduir a la versió 4.10.
Cada usuari té un testimoni d’accés personal que es pot obtenir al perfil d’usuari. Els testimonis d’usuari generats recentment tenen el prefix wlu_.
És possible crear fitxes de l’àmbit del projecte per a l’accés de l’API només al projecte determinat. Aquestes fitxes es poden identificar amb el prefix wlp_.
Exemples d’autenticació¶
Exemple de sol·licitud:
GET /api/ HTTP/1.1
Host: example.com
Accept: application/json, text/javascript
Authorization: Token YOUR-TOKEN
Exemple de resposta:
HTTP/1.0 200 OK
Date: Fri, 25 Mar 2016 09:46:12 GMT
Server: WSGIServer/0.1 Python/2.7.11+
Vary: Accept, Accept-Language, Cookie
X-Frame-Options: SAMEORIGIN
Content-Type: application/json
Content-Language: en
Allow: GET, HEAD, OPTIONS
{
"projects":"http://example.com/api/projects/",
"components":"http://example.com/api/components/",
"translations":"http://example.com/api/translations/",
"languages":"http://example.com/api/languages/"
}
Exemple de CURL:
curl \
-H "Authorization: Token TOKEN" \
https://example.com/api/
Exemples de pas de paràmetres¶
Per al mètode POST, els paràmetres es poden especificar com a enviament del formulari (application/x-www-form-urlencoded) o com a JSON (application/json).
Exemple de sol·licitud de formulari:
POST /api/projects/hello/repository/ HTTP/1.1
Host: example.com
Accept: application/json
Content-Type: application/x-www-form-urlencoded
Authorization: Token TOKEN
operation=pull
Exemple de sol·licitud JSON:
POST /api/projects/hello/repository/ HTTP/1.1
Host: example.com
Accept: application/json
Content-Type: application/json
Authorization: Token TOKEN
Content-Length: 20
{"operation":"pull"}
Exemple de CURL:
curl \
-d operation=pull \
-H "Authorization: Token TOKEN" \
http://example.com/api/components/hello/weblate/repository/
Exemple de CURL JSON:
curl \
--data-binary '{"operation":"pull"}' \
-H "Content-Type: application/json" \
-H "Authorization: Token TOKEN" \
http://example.com/api/components/hello/weblate/repository/
Components and categories¶
To access a component which is nested inside a Categoria, you need to URL
encode the category name into a component name separated with a slash. For
example usage placed in a docs category needs to be used as
docs%252Fusage. Full URL in this case would be for example
https://example.com/api/components/hello/docs%252Fusage/repository/.
Limitació de velocitat de l’API¶
Les sol·licituds de l’API tenen una taxa limitada; la configuració predeterminada la limita a 100 sol·licituds per dia per a usuaris anònims i 5.000 sol·licituds per hora per a usuaris autenticats.
La limitació de velocitat es pot ajustar a settings.py; vegeu Throttling in Django REST framework documentation per a més detalls sobre com configurar-lo.
Al contenidor Docker, això es pot configurar mitjançant WEBLATE_API_RATELIMIT_ANON i WEBLATE_API_RATELIMIT_USER.
L’estat de la limitació de la taxa s’informa a les capçaleres següents:
|
Nombre permès de sol·licituds per realitzar |
|
Nombre restant de peticions per realitzar |
|
Nombre de segons fins que es restableixi la finestra de límit de velocitat |
Canviat a la versió 4.1: S’han afegit capçaleres d’estat de limitació de velocitat.
Error responses¶
Canviat a la versió 5.10: Les respostes d’error eren específiques del punt final abans d’aquest llançament.
Les respostes d’error de Weblate tenen un format basat en Error Response Format.
Punt d’entrada de l’API¶
- GET /api/¶
The API root entry point.
Exemple de sol·licitud:
GET /api/ HTTP/1.1 Host: example.com Accept: application/json, text/javascript Authorization: Token YOUR-TOKEN
Exemple de resposta:
HTTP/1.0 200 OK Date: Fri, 25 Mar 2016 09:46:12 GMT Server: WSGIServer/0.1 Python/2.7.11+ Vary: Accept, Accept-Language, Cookie X-Frame-Options: SAMEORIGIN Content-Type: application/json Content-Language: en Allow: GET, HEAD, OPTIONS { "projects":"http://example.com/api/projects/", "components":"http://example.com/api/components/", "translations":"http://example.com/api/translations/", "languages":"http://example.com/api/languages/" }
Usuaris¶
Afegit a la versió 4.0.
- GET /api/users/¶
Returns a list of users if you have permissions to see manage users. If not, then you get to see only your own details.
- Query Parameters:
username (string) – Username to search for
id (int) – User ID to search for
email (string) – Email to search for (case-insensitive, exact match). Requires
user.vieworuser.editpermission; the parameter is ignored for unprivileged users.
Vegeu també
Users object attributes are documented at
GET /api/users/(str:username)/.
- POST /api/users/¶
Creates a new user.
Requires the global
user.editpermission. See Control d’accés for the user management permission model.- Parameters:
username (string) – Nom d’usuari
full_name (string) – User full name
email (string) – User email
is_superuser (boolean) – Is user superuser? (optional)
is_active (boolean) – Is user active? (optional)
is_bot (boolean) – Is user bot? (optional) (used for project scoped tokens)
- GET /api/users/(str: username)/¶
Returns information about users.
- Parameters:
username (string) – User’s username
- Response JSON Object:
username (string) – username of a user
full_name (string) – full name of a user
email (string) – email of a user
is_superuser (boolean) – whether the user is a super user
is_active (boolean) – whether the user is active
is_bot (boolean) – whether the user is bot (used for project scoped tokens)
date_joined (string) – date the user is created
last_login (string) – date the user last signed in
groups (array) – link to associated groups; see
GET /api/groups/(int:id)/profile (object) – user profile preferences; see Perfil d’usuari. Returned only with the
user.vieworuser.editpermission.
Example JSON data:
{ "email": "user@example.com", "full_name": "Example User", "username": "exampleusername", "groups": [ "http://example.com/api/groups/2/", "http://example.com/api/groups/3/" ], "profile": { "language": "en", "languages": [ "http://example.com/api/languages/cs/" ], "secondary_languages": [], "translated": 42, "suggested": 3, "uploaded": 1, "commented": 5, "theme": "auto", "hide_completed": false, "secondary_in_zen": true, "hide_source_secondary": false, "wide_tables": false, "listing_columns": ["untranslated", "untranslated_words", "untranslated_chars", "nottranslated", "checks", "suggestions", "comments"], "editor_link": "", "translate_mode": 0, "zen_mode": 0, "special_chars": "", "nearby_strings": 10, "auto_watch": true, "contribute_personal_tm": true, "dashboard_view": 1, "dashboard_component_list": null, "watched": [], "website": "https://example.com/", "contact": "", "liberapay": "", "fediverse": "", "codesite": "", "github": "", "twitter": "", "linkedin": "", "location": "", "company": "", "public_email": "", "commit_email": "", "commit_name": 0, "last_2fa": "" }, "is_superuser": true, "is_active": true, "is_bot": false, "date_joined": "2020-03-29T18:42:42.617681Z", "url": "http://example.com/api/users/exampleusername/", "contributions_url": "http://example.com/api/users/exampleusername/contributions/", "statistics_url": "http://example.com/api/users/exampleusername/statistics/" }
- PUT /api/users/(str: username)/¶
Changes the user parameters.
Requires the global
user.editpermission unless a user is updating their own account or profile fields. See Control d’accés for the user management permission model.- Parameters:
username (string) – User’s username
- Response JSON Object:
username (string) – username of a user
full_name (string) – full name of a user
email (string) – email of a user
is_superuser (boolean) – whether the user is a super user
is_active (boolean) – whether the user is active
is_bot (boolean) – whether the user is bot (used for project scoped tokens)
date_joined (string) – date the user is created
profile (object) – updated profile preferences when included in the request; see Perfil d’usuari
- PATCH /api/users/(str: username)/¶
Changes the user parameters.
Requires the global
user.editpermission unless a user is updating their own account or profile fields. See Control d’accés for the user management permission model.- Parameters:
username (string) – User’s username
- Response JSON Object:
username (string) – username of a user
full_name (string) – full name of a user
email (string) – email of a user
is_superuser (boolean) – whether the user is a super user
is_active (boolean) – whether the user is active
is_bot (boolean) – whether the user is bot (used for project scoped tokens)
date_joined (string) – date the user is created
profile (object) – updated profile preferences when included in the request; see Perfil d’usuari
- DELETE /api/users/(str: username)/¶
Deletes all user information and marks the user inactive.
Requires the global
user.editpermission. See Control d’accés for the user management permission model.- Parameters:
username (string) – User’s username
- POST /api/users/(str: username)/groups/¶
Associate groups with a user.
Requires the global
user.editpermission. See Control d’accés for the user management permission model. This permission authorizes membership changes for every team, including project and workspace teams; no separate permission over the target team is required.- Parameters:
username (string) – User’s username
- Form Parameters:
string group_id – The unique group ID
- DELETE /api/users/(str: username)/groups/¶
Afegit a la versió 4.13.1.
Remove user from a group.
Requires the global
user.editpermission. See Control d’accés for the user management permission model. This permission authorizes membership changes for every team, including project and workspace teams; no separate permission over the target team is required.- Parameters:
username (string) – User’s username
- Form Parameters:
string group_id – The unique group ID
- GET /api/users/(str: username)/statistics/¶
List statistics of a user.
- Parameters:
username (string) – User’s username
- Response JSON Object:
translated (int) – Number of translations by user
suggested (int) – Number of suggestions by user
uploaded (int) – Number of uploads by user
commented (int) – Number of comments by user
languages (int) – Number of languages user can translate
- GET /api/users/(str: username)/contributions/¶
List translations with contributions from a user.
- Parameters:
username (string) – User’s username
- Response JSON Object:
translations (array) – link to translations; see
GET /api/translations/(string:project)/(string:component)/(string:language)/
- GET /api/users/(str: username)/notifications/¶
List subscriptions of a user.
- Parameters:
username (string) – User’s username
- POST /api/users/(str: username)/notifications/¶
Associate subscriptions with a user.
- Parameters:
username (string) – User’s username
- Request JSON Object:
notification (string) – Name of notification registered
scope (int) – Scope of notification from the available choices
frequency (int) – Frequency choices for notifications
- GET /api/users/(str: username)/notifications/(int: subscription_id)/¶
Get a subscription associated with a user.
- Parameters:
username (string) – User’s username
subscription_id (int) – ID of notification registered
- PUT /api/users/(str: username)/notifications/(int: subscription_id)/¶
Edit a subscription associated with a user.
- Parameters:
username (string) – User’s username
subscription_id (int) – ID of notification registered
- Request JSON Object:
notification (string) – Name of notification registered
scope (int) – Scope of notification from the available choices
frequency (int) – Frequency choices for notifications
- PATCH /api/users/(str: username)/notifications/(int: subscription_id)/¶
Edit a subscription associated with a user.
- Parameters:
username (string) – User’s username
subscription_id (int) – ID of notification registered
- Request JSON Object:
notification (string) – Name of notification registered
scope (int) – Scope of notification from the available choices
frequency (int) – Frequency choices for notifications
- DELETE /api/users/(str: username)/notifications/(int: subscription_id)/¶
Delete a subscription associated with a user.
- Parameters:
username (string) – User’s username
subscription_id – Name of notification registered
subscription_id – int
Perfil d’usuari¶
Afegit a la versió 2026.8.
The user API exposes profile preferences in a nested profile object. The
object is returned on GET /api/users/(str:username)/ only for callers
with the user.view or user.edit permission. Users without those
permissions can still update their own profile through
PATCH /api/users/(str:username)/; the response then includes the updated
profile object.
Profile fields mirror the settings described in Perfil d’usuari.
Grups¶
Afegit a la versió 4.0.
- GET /api/groups/¶
Returns a list of groups if you have permissions to see manage groups. If not, then you get to see only the groups the user is a part of.
Vegeu també
Group object attributes are documented at
GET /api/groups/(int:id)/.
- POST /api/groups/¶
Creates a new group.
- Parameters:
name (string) – Group name
project_selection (int) – Group of project selection from given options
language_selection (int) – Group of languages selected from given options
defining_project (str) – link to the defining project, used for Managing per-project access control; see
GET /api/projects/(string:project)/
- GET /api/groups/(int: id)/¶
Returns information about the group.
- Parameters:
id (int) – Group’s ID
- Response JSON Object:
name (string) – name of a group
project_selection (int) – integer corresponding to group of projects
language_selection (int) – integer corresponding to group of languages
roles (array) – link to associated roles; see
GET /api/roles/(int:id)/projects (array) – link to associated projects; see
GET /api/projects/(string:project)/components (array) – link to associated components; see
GET /api/components/(string:project)/(string:component)/componentlists (array) – link to associated componentlist; see
GET /api/component-lists/(str:slug)/defining_project (str) – link to the defining project, used for Managing per-project access control; see
GET /api/projects/(string:project)/admins (array) – link to associated administrators; see
GET /api/users/(str:username)/
Example JSON data:
{ "name": "Guests", "defining_project": null, "project_selection": 3, "language_selection": 1, "url": "http://example.com/api/groups/1/", "roles": [ "http://example.com/api/roles/1/", "http://example.com/api/roles/2/" ], "languages": [ "http://example.com/api/languages/en/", "http://example.com/api/languages/cs/", ], "projects": [ "http://example.com/api/projects/demo1/", "http://example.com/api/projects/demo/" ], "componentlist": "http://example.com/api/component-lists/new/", "components": [ "http://example.com/api/components/demo/weblate/" ], "admins": [ "http://example.com/api/users/exampleusername/" ] }
- PUT /api/groups/(int: id)/¶
Changes the group parameters.
- Parameters:
id (int) – Group’s ID
- Response JSON Object:
name (string) – name of a group
project_selection (int) – integer corresponding to group of projects
language_selection (int) – integer corresponding to group of languages
- PATCH /api/groups/(int: id)/¶
Changes the group parameters.
- Parameters:
id (int) – Group’s ID
- Response JSON Object:
name (string) – name of a group
project_selection (int) – integer corresponding to group of projects
language_selection (int) – integer corresponding to group of languages
- DELETE /api/groups/(int: id)/¶
Deletes the group.
- Parameters:
id (int) – Group’s ID
- POST /api/groups/(int: id)/roles/¶
Associate roles with a group.
- Parameters:
id (int) – Group’s ID
- Form Parameters:
string role_id – The unique role ID
- DELETE /api/groups/(int: id)/roles/(int: role_id)¶
Delete role from a group.
- Parameters:
id (int) – Group’s ID
role_id (int) – The unique role ID
- POST /api/groups/(int: id)/components/¶
Associate components with a group.
- Parameters:
id (int) – Group’s ID
- Form Parameters:
string component_id – The unique component ID
- DELETE /api/groups/(int: id)/components/(int: component_id)¶
Delete component from a group.
- Parameters:
id (int) – Group’s ID
component_id (int) – The unique component ID
- POST /api/groups/(int: id)/projects/¶
Associate projects with a group.
- Parameters:
id (int) – Group’s ID
- Form Parameters:
string project_id – The unique project ID
- DELETE /api/groups/(int: id)/projects/(int: project_id)¶
Delete project from a group.
- Parameters:
id (int) – Group’s ID
project_id (int) – The unique project ID
- POST /api/groups/(int: id)/languages/¶
Associate languages with a group.
- Parameters:
id (int) – Group’s ID
- Form Parameters:
string language_code – The unique language code
- DELETE /api/groups/(int: id)/languages/(string: language_code)¶
Delete language from a group.
- Parameters:
id (int) – Group’s ID
language_code (string) – The unique language code
- POST /api/groups/(int: id)/componentlists/¶
Associate componentlists with a group.
- Parameters:
id (int) – Group’s ID
- Form Parameters:
string component_list_id – The unique componentlist ID
- DELETE /api/groups/(int: id)/componentlists/(int: component_list_id)¶
Delete componentlist from a group.
- Parameters:
id (int) – Group’s ID
component_list_id (int) – The unique componentlist ID
- POST /api/groups/(int: id)/admins/¶
Afegit a la versió 5.5.
Add user to team admins.
- Parameters:
id (int) – Group’s ID
- Form Parameters:
string user_id – The user’s ID
- DELETE /api/groups/(int: id)/admins/(int: user_id)¶
Afegit a la versió 5.5.
Delete user from team admins.
- Parameters:
id (int) – Group’s ID
user_id (integer) – The user’s ID
Rols¶
- GET /api/roles/¶
Returns a list of all roles associated with user. If user is superuser, then list of all existing roles is returned.
Vegeu també
Roles object attributes are documented at
GET /api/roles/(int:id)/.
- POST /api/roles/¶
Creates a new role.
- Parameters:
name (string) – Role name
permissions (array) – List of codenames of permissions
- GET /api/roles/(int: id)/¶
Returns information about the role.
- Parameters:
id (int) – Role’s ID
- Response JSON Object:
name (string) – Role name
permissions (array) – list of codenames of permissions
Example JSON data:
{ "name": "Access repository", "permissions": [ "vcs.access", "vcs.view" ], "url": "http://example.com/api/roles/1/", }
- PUT /api/roles/(int: id)/¶
Changes the role parameters.
- Parameters:
id (int) – Role’s ID
- Response JSON Object:
name (string) – Role name
permissions (array) – list of codenames of permissions
- PATCH /api/roles/(int: id)/¶
Changes the role parameters.
- Parameters:
id (int) – Role’s ID
- Response JSON Object:
name (string) – Role name
permissions (array) – list of codenames of permissions
- DELETE /api/roles/(int: id)/¶
Deletes the role.
- Parameters:
id (int) – Role’s ID
Llengües¶
- GET /api/languages/¶
Returns a list of all languages.
Vegeu també
Language object attributes are documented at
GET /api/languages/(string:language)/.
- POST /api/languages/¶
Creates a new language.
- Parameters:
code (string) – Nom de la llengua
name (string) – Nom de la llengua
direction (string) – Direcció del text
population (int) – Nombre de parlants
plural (object) – Language plural formula and number
- GET /api/languages/(string: language)/¶
Returns information about the language.
- Parameters:
language (string) – Codi de llengua
- Response JSON Object:
code (string) – Codi de llengua
direction (string) – Direcció del text
plural (object) – Object of language plural information
aliases (array) – Array of aliases for language
- Request JSON Object:
population (int) – Nombre de parlants
Example JSON data:
{ "code": "en", "direction": "ltr", "name": "English", "population": 159034349015, "plural": { "id": 75, "source": 0, "number": 2, "formula": "n != 1", "type": 1 }, "aliases": [ "english", "en_en", "base", "source", "eng" ], "url": "http://example.com/api/languages/en/", "web_url": "http://example.com/languages/en/", "statistics_url": "http://example.com/api/languages/en/statistics/" }
- PUT /api/languages/(string: language)/¶
Changes the language parameters.
- Parameters:
language (string) – Language’s code
- Request JSON Object:
name (string) – Nom de la llengua
direction (string) – Direcció del text
population (int) – Nombre de parlants
plural (object) – Language plural details
- PATCH /api/languages/(string: language)/¶
Changes the language parameters.
- Parameters:
language (string) – Language’s code
- Request JSON Object:
name (string) – Nom de la llengua
direction (string) – Direcció del text
population (int) – Nombre de parlants
plural (object) – Language plural details
- DELETE /api/languages/(string: language)/¶
Deletes the language.
- Parameters:
language (string) – Language’s code
- GET /api/languages/(string: language)/statistics/¶
Returns statistics for a language.
- Parameters:
language (string) – Codi de llengua
Vegeu també
Returned attributes are described in Estadístiques.
Projectes¶
- GET /api/projects/¶
Returns a list of all projects.
Vegeu també
Project object attributes are documented at
GET /api/projects/(string:project)/.
- POST /api/projects/¶
Creates a new project.
- Parameters:
name (string) – Nom del projecte
slug (string) – Llimac del projecte
web (string) – Lloc web del projecte
workspace (string) – Optional workspace UUID. Creating a project in a workspace requires Add projects to workspace permission for that workspace. When omitted, Weblate can use the only eligible workspace. Creating a project without an eligible workspace requires the site-wide Add new projects permission. See Project creation and moves.
access_control (integer) – Control d’accés
use_shared_tm (boolean) – Utilitza la memòria de traducció compartida
contribute_shared_tm (boolean) – Contribueix a la memòria de traducció compartida
use_workspace_tm (boolean) – Use workspace translation memory
contribute_workspace_tm (boolean) – Contribute to workspace translation memory
autoclean_tm (boolean) – Neteja automàticament la memòria de traducció
Omit
access_controlto use the configured default. Explicit non-default access control requires a superuser unless a billing plan determines the value. On Hosted Weblate, Custom access control is unavailable and each translation-memory contribution setting is forced to match its corresponding usage setting.
- GET /api/projects/(string: project)/¶
Returns information about the project.
- Parameters:
project (string) – Project URL slug
- Response JSON Object:
name (string) – project name
slug (string) – project slug
web (string) – project website
components_list_url (string) – URL to components list; see
GET /api/projects/(string:project)/components/repository_url (string) – URL to repository status; see
GET /api/projects/(string:project)/repository/changes_list_url (string) – URL to changes list; see
GET /api/projects/(string:project)/changes/reports_url (string) – URL to list or generate scoped reports; see
GET /api/projects/(string:project)/reports/translation_review (boolean) – Activa les revisions
source_review (boolean) – Activa les revisions d’origen
enable_hooks (boolean) – Activa els punts d’inserció
workspace (string) – workspace UUID, or
nullwhen the project is not assigned to a workspaceinstructions (string) – Instruccions de traducció
language_aliases (string) – Àlies de llengua
license (string) – Llicència de la traducció
access_control (integer) – Control d’accés
use_shared_tm (boolean) – Utilitza la memòria de traducció compartida
contribute_shared_tm (boolean) – Contribueix a la memòria de traducció compartida
use_workspace_tm (boolean) – Use workspace translation memory
contribute_workspace_tm (boolean) – Contribute to workspace translation memory
autoclean_tm (boolean) – Neteja automàticament la memòria de traducció
announcements_url (string) – URL to announcements; see
GET /api/projects/(string:project)/announcements/
Example JSON data:
{ "name": "Hello", "slug": "hello", "url": "http://example.com/api/projects/hello/", "web": "https://weblate.org/", "web_url": "http://example.com/projects/hello/" }
- PATCH /api/projects/(string: project)/¶
Afegit a la versió 4.3.
Edit a project by a PATCH request.
The
projectvalue is the project slug. To avoid using a wrong identifier, use the projecturlreturned byGET /api/projects/orGET /api/projects/(string:project)/.The request body accepts project fields such as
instructions,license,access_control, and translation-memory settings.Example JSON data:
{ "instructions": "Translate consistently.", "license": "MIT", "use_shared_tm": true, "access_control": 100 }
Changing
access_controlrequires permission to manage project access. Making a project publicly accessible can require licenses on its components whenLICENSE_REQUIREDis enabled. On Hosted Weblate, Custom access control is unavailable and each translation-memory contribution setting is forced to match its corresponding usage setting.Changing
workspacemoves the project. Moving a project requires permission to edit the project and the Edit workspace settings permission for the source and target workspace. The target workspace also requires the Add projects to workspace permission. Moving a project out of a workspace also requires the site-wide Add new projects permission. See Project creation and moves.- Parameters:
project (string) – Project URL slug
instructions (string) – Instruccions de traducció
license (string) – Llicència de la traducció
access_control (integer) – Control d’accés
use_shared_tm (boolean) – Utilitza la memòria de traducció compartida
contribute_shared_tm (boolean) – Contribueix a la memòria de traducció compartida
use_workspace_tm (boolean) – Use workspace translation memory
contribute_workspace_tm (boolean) – Contribute to workspace translation memory
autoclean_tm (boolean) – Neteja automàticament la memòria de traducció
workspace (string) – Optional workspace UUID, or
nullto move the project out of a workspace
- PUT /api/projects/(string: project)/¶
Afegit a la versió 4.3.
Edit a project by a PUT request.
Changing
workspacefollows the same permission checks asPATCH /api/projects/(string:project)/.- Parameters:
project (string) – Project URL slug
instructions (string) – Instruccions de traducció
license (string) – Llicència de la traducció
access_control (integer) – Control d’accés
use_shared_tm (boolean) – Utilitza la memòria de traducció compartida
contribute_shared_tm (boolean) – Contribueix a la memòria de traducció compartida
use_workspace_tm (boolean) – Use workspace translation memory
contribute_workspace_tm (boolean) – Contribute to workspace translation memory
autoclean_tm (boolean) – Neteja automàticament la memòria de traducció
- DELETE /api/projects/(string: project)/¶
Deletes a project.
- Parameters:
project (string) – Project URL slug
- GET /api/projects/(string: project)/changes/¶
Returns a list of project changes. This is essentially a project scoped
GET /api/changes/accepting same params.- Parameters:
project (string) – Project URL slug
- Response JSON Object:
results (array) – array of component objects; see
GET /api/changes/(int:id)/
- GET /api/projects/(string: project)/file/¶
Afegit a la versió 5.5.
Downloads all available translations associated with the project as an archive file using the requested format and language.
- Parameters:
project (string) – Project URL slug
- Query Parameters:
format (string) – The archive format to use; If not specified, defaults to
zip; Supported formats:zipandzip:CONVERSIONwhereCONVERSIONis one of converters listed at Descàrrega de traduccions.language_code (string) – The language code to download; If not specified, all languages are included.
- GET /api/projects/(string: project)/repository/¶
Returns information about the VCS repository status. This endpoint contains only an overall summary for all repositories for the project. To get more detailed status use
GET /api/components/(string:project)/(string:component)/repository/.Repository status requires component-wide permission on every component sharing the affected repositories. This includes linked components in other projects.
- Parameters:
project (string) – Project URL slug
- Response JSON Object:
needs_commit (boolean) – whether there are any pending changes to commit
needs_merge (boolean) – whether there are any upstream changes to merge
needs_push (boolean) – whether there are any local changes to push
Example JSON data:
{ "needs_commit": true, "needs_merge": false, "needs_push": true }
- POST /api/projects/(string: project)/repository/¶
Performs given operation on the VCS repository.
Repository operations require component-wide permission on every component sharing the affected repositories. This includes linked components in other projects.
- Parameters:
project (string) – Project URL slug
- Request JSON Object:
operation (string) – Operation to perform: one of
push,pull,commit,reset,cleanup,file-sync,file-scan
- Response JSON Object:
result (boolean) – result of the operation
Exemple de CURL:
curl \ -d operation=pull \ -H "Authorization: Token TOKEN" \ http://example.com/api/projects/hello/repository/
Exemple de sol·licitud JSON:
POST /api/projects/hello/repository/ HTTP/1.1 Host: example.com Accept: application/json Content-Type: application/json Authorization: Token TOKEN Content-Length: 20 {"operation":"pull"}
JSON response example:
HTTP/1.0 200 OK Date: Tue, 12 Apr 2016 09:32:50 GMT Server: WSGIServer/0.1 Python/2.7.11+ Vary: Accept, Accept-Language, Cookie X-Frame-Options: SAMEORIGIN Content-Type: application/json Content-Language: en Allow: GET, POST, HEAD, OPTIONS {"result":true}
- GET /api/projects/(string: project)/components/¶
Returns a list of translation components in the given project.
- Parameters:
project (string) – Project URL slug
- Response JSON Object:
results (array) – array of component objects; see
GET /api/components/(string:project)/(string:component)/
- POST /api/projects/(string: project)/components/¶
Canviat a la versió 4.3: The
zipfileanddocfileparameters are now accepted for VCS-less components, see Fitxers locals.Canviat a la versió 4.6: The cloned repositories are now automatically shared within a project using URL interns del lloc web. Use
disable_autoshareto turn off this.Creates translation components in the given project.
Suggeriment
Use URL interns del lloc web when creating multiple components from a single VCS repository.
Nota
Most of the component creation happens in the background. Check the
task_urlattribute of created component and follow the progress there.- Parameters:
project (string) – Project URL slug
- Form Parameters:
file zipfile – ZIP file to upload into Weblate for translations initialization
file docfile – Document to translate
string from_component – Optional source component reference used to duplicate the new component. Accepts either a numeric component ID or a full Weblate component path. When provided, the new component inherits the source component configuration and translations into a new local repository. Repository fields such as
repo,vcs,branch,push, andpush_branchcan not be combined with this option.boolean disable_autoshare – Disables automatic repository sharing via URL interns del lloc web.
- Request JSON Object:
object – Component parameters, see
GET /api/components/(string:project)/(string:component)/
- Response JSON Object:
result (object) – Created component object; see
GET /api/components/(string:project)/(string:component)/
JSON can not be used when uploading the files using the
zipfileanddocfileparameters. The data has to be uploaded as multipart/form-data.CURL form request example:
curl \ --form docfile=@strings.html \ --form name=Weblate \ --form slug=weblate \ --form file_format=html \ --form new_lang=add \ -H "Authorization: Token TOKEN" \ http://example.com/api/projects/hello/components/
CURL JSON request example:
curl \ --data-binary '{ "branch": "main", "file_format": "po", "file_format_params": { "po_line_wrap": 65535, "po_no_location": true }, "filemask": "po/*.po", "name": "Weblate", "slug": "weblate", "repo": "https://github.com/WeblateOrg/hello.git", "template": "", "new_base": "po/hello.pot", "vcs": "git" }' \ -H "Content-Type: application/json" \ -H "Authorization: Token TOKEN" \ http://example.com/api/projects/hello/components/
JSON request to create a new component from Git:
POST /api/projects/hello/components/ HTTP/1.1 Host: example.com Accept: application/json Content-Type: application/json Authorization: Token TOKEN Content-Length: 20 { "branch": "main", "file_format": "po", "file_format_params": { "po_line_wrap": 65535, "po_no_location": true }, "filemask": "po/*.po", "name": "Weblate", "slug": "weblate", "repo": "https://github.com/WeblateOrg/hello.git", "template": "", "new_base": "po/hello.pot", "vcs": "git" }
JSON request to create a new component from another one:
POST /api/projects/hello/components/ HTTP/1.1 Host: example.com Accept: application/json Content-Type: application/json Authorization: Token TOKEN Content-Length: 20 { "from_component": "hello/weblate", "name": "Weblate", "slug": "weblate" }
JSON response example:
HTTP/1.0 200 OK Date: Tue, 12 Apr 2016 09:32:50 GMT Server: WSGIServer/0.1 Python/2.7.11+ Vary: Accept, Accept-Language, Cookie X-Frame-Options: SAMEORIGIN Content-Type: application/json Content-Language: en Allow: GET, POST, HEAD, OPTIONS { "branch": "main", "file_format": "po", "file_format_params": { "po_line_wrap": 65535, "po_no_location": true }, "filemask": "po/*.po", "git_export": "", "license": "", "license_url": "", "name": "Weblate", "slug": "weblate", "project": { "name": "Hello", "slug": "hello", "source_language": { "code": "en", "direction": "ltr", "population": 159034349015, "name": "English", "url": "http://example.com/api/languages/en/", "web_url": "http://example.com/languages/en/" }, "url": "http://example.com/api/projects/hello/", "web": "https://weblate.org/", "web_url": "http://example.com/projects/hello/" }, "repo": "file:///home/nijel/work/weblate-hello", "template": "", "new_base": "", "url": "http://example.com/api/components/hello/weblate/", "vcs": "git", "web_url": "http://example.com/projects/hello/weblate/" }
- GET /api/projects/(string: project)/languages/¶
Returns paginated statistics for all languages within a project.
- Parameters:
project (string) – Project URL slug
- Response JSON Object:
results (array) – array of translation statistics objects
language (string) – language name
code (string) – language code
total (int) – total number of strings
translated (int) – number of translated strings
translated_percent (float) – percentage of translated strings
total_words (int) – total number of words
translated_words (int) – number of translated words
words_percent (float) – percentage of translated words
- GET /api/projects/(string: project)/statistics/¶
Returns statistics for a project.
- Parameters:
project (string) – Project URL slug
Vegeu també
Returned attributes are described in Estadístiques.
- GET /api/projects/(string: project)/metrics/¶
Afegit a la versió 2026.8.
Returns translation metrics for the project components visible to the caller. Components are identified by their project-relative path and the result is grouped by component and language. When multiple components have the same project-relative path,
@and the component ID are appended to each colliding path.The OpenMetrics representation exposes
weblate_translation_infoandweblate_*gauges compatible with the project translation statistics. Strings containing suggestions useweblate_strings_with_suggestionsto distinguish them from the server-wideweblate_suggestionsobject count. The CSV representation contains one row for each component, language, and numeric metric.- Parameters:
project (string) – Project URL slug
- Query Parameters:
format (string) – Response format; use
openmetricsorcsvfor monitoring and tabular output.
- GET /api/projects/(string: project)/categories/¶
Afegit a la versió 5.0: Returns categories for a project. See
GET /api/categories/(int:id)/for field definitions.- param project:
Project URL slug
- type project:
string
- GET /api/projects/(string: project)/labels/¶
Afegit a la versió 5.3: Returns labels for a project.
- param project:
Project URL slug
- type project:
string
- >json int id:
ID of the label
- >json string name:
name of the label
- >json string color:
color of the label
- POST /api/projects/(string: project)/labels/¶
Afegit a la versió 5.3: Creates a label for a project.
- param project:
Project URL slug
- type project:
string
- <json string name:
name of the label
- <json string color:
color of the label
- DELETE /api/projects/(string: project)/labels/(int: label_id)/¶
Afegit a la versió 5.14: Deletes a label from a project.
- param project:
Project URL slug
- type project:
string
- param label_id:
ID of the label to delete
- type label_id:
integer
- GET /api/projects/(string: project)/reports/¶
Lists accessible reports generated directly for a project.
- POST /api/projects/(string: project)/reports/¶
Schedules a report using the project as its scope. The request and response match
POST /api/reports/; scope fields must be omitted.
- GET /api/projects/(string: project)/machinery_settings/¶
Afegit a la versió 5.9.
Returns automatic suggestion settings for a project, consisting of the configurations defined for each translation service installed.
- Parameters:
project (string) – Project URL slug
- Response JSON Object:
suggestion_settings (object) – Configuration for all installed services.
- POST /api/projects/(string: project)/machinery_settings/¶
Afegit a la versió 5.9.
Create or update the service configuration for a project.
- Parameters:
project (string) – Project URL slug
- Form Parameters:
string service – Service name
string configuration – Service configuration in JSON
- GET /api/projects/(string: project)/languages/(string: language_code)/file/¶
Canviat a la versió 5.15.1: Added ability to download ZIP file of all components translations in a project for 1 specific language.
Download a ZIP file of all translation files for a specified
language_codeacross all components for a givenprojectrather than downloading individual translated files and manually zipping them, with the archive named {project-slug}-{language-code}.zip and organized by component paths (e.g., component-slug/po/lang.po).- Parameters:
project (string) – Project URL slug
language_code (string) – Codi de llengua
- Query Parameters:
filter (string) – Optional case-insensitive substring to filter components by slug (e.g.,
?filter=corewill match components with “core” anywhere in their slug); only components whose slugs contain the substring will be included in the download.format (string) – The archive format to use; If not specified, defaults to
zip; Supported formats:zipandzip:CONVERSIONwhereCONVERSIONis one of converters listed at Descàrrega de traduccions.
Nota
Possible responses:
200 OKwith the ZIP file of translations for the specified language across all components in the project. If no components have translations for the specified language, an empty ZIP file will be returned.403 Forbiddenif the user does not have permission to the project.404 Not Foundif the project slug does not exist.
- GET /api/projects/(string: project)/languages/(string: language_code)/announcements/¶
Afegit a la versió 2026.6: Returns announcements for a specified
language_codein a project.- param project:
Project URL slug
- type project:
string
- param language_code:
Codi de llengua
- type language_code:
string
- >json int id:
ID of the announcement
- >json string message:
announcement text
- >json string severity:
color of the message, one of
info(light blue),warning(yellow),danger(red),success(green)- >json date expiry:
hide after this date, ISO 8601 extended format date (optional)
- >json bool notify:
send notification to subscribed users? (optional)
- POST /api/projects/(string: project)/languages/(string: language_code)/announcements/¶
Afegit a la versió 2026.6: Creates an announcement for a specified
language_codein a project.- param project:
Project URL slug
- type project:
string
- param language_code:
Codi de llengua
- type language_code:
string
- <json string message:
announcement text
- <json string severity:
color of the message, one of
info(light blue),warning(yellow),danger(red),success(green)- <json date expiry:
hide after this date, ISO 8601 extended format date (optional)
- <json bool notify:
send notification to subscribed users? (optional)
- DELETE /api/projects/(string: project)/languages/(string: language_code)/announcements/(int: announcement_id)/¶
Afegit a la versió 2026.6: Deletes an announcement from a specified
language_codein a project.- param project:
Project URL slug
- type project:
string
- param language_code:
Codi de llengua
- type language_code:
string
- param announcement_id:
ID of the announcement to delete
- type announcement_id:
integer
- GET /api/projects/(string: project)/announcements/¶
Afegit a la versió 5.17: Returns announcements for a project.
- param project:
Project URL slug
- type project:
string
- >json int id:
ID of the announcement
- >json string message:
announcement text
- >json string severity:
color of the message, one of
info(light blue),warning(yellow),danger(red),success(green)- >json date expiry:
hide after this date, ISO 8601 extended format date (optional)
- >json bool notify:
send notification to subscribed users? (optional)
- POST /api/projects/(string: project)/announcements/¶
Afegit a la versió 5.17: Creates an announcement for a project.
- param project:
Project URL slug
- type project:
string
- <json string message:
announcement text
- <json string severity:
color of the message, one of
info(light blue),warning(yellow),danger(red),success(green)- <json date expiry:
hide after this date, ISO 8601 extended format date (optional)
- <json bool notify:
send notification to subscribed users? (optional)
- DELETE /api/projects/(string: project)/announcements/(int: announcement_id)/¶
Afegit a la versió 5.17: Deletes an announcement from a project.
- param project:
Project URL slug
- type project:
string
- param announcement_id:
ID of the announcement to delete
- type announcement_id:
integer
- GET /api/projects/(string: project)/backups/¶
Afegit a la versió 2026.7: Returns a list of Project level backups archives.
- param project:
Project URL slug
- type project:
string
- >json string name:
Backup file name, for example
1718803200.zip- >json string timestamp:
Backup creation time in ISO 8601 format
- >json int size:
Backup file size in bytes
- POST /api/projects/(string: project)/backups/¶
Afegit a la versió 2026.7: Schedules creation of a new Project level backups archive. Once ready, the backup appears in
GET /api/projects/(string:project)/backups/.- param project:
Project URL slug
- type project:
string
- >json string detail:
Result message
- >json string url:
URL to list backups
- GET /api/projects/(string: project)/backups/(string: backup)/¶
Afegit a la versió 2026.7: Downloads a Project level backups archive.
- param project:
Project URL slug
- type project:
string
- param backup:
Backup file name, e.g.
1718803200.zip- type backup:
string
Components¶
Suggeriment
Utilitzeu POST /api/projects/(string:project)/components/ per crear nous components.
- GET /api/components/¶
Returns a list of translation components.
Vegeu també
Component object attributes are documented at
GET /api/components/(string:project)/(string:component)/.
- GET /api/components/(string: project)/(string: component)/¶
Returns information about the translation component.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- Response JSON Object:
project (object) – the translation project; see
GET /api/projects/(string:project)/name (string) – Nom del component
slug (string) – Component llimac
vcs (string) – Sistema de control de versions
linked_component (string) – component whose repository is linked via URL interns del lloc web
repo (string) – Repositori del codi font, this is the actual repository URL even when URL interns del lloc web are used, use
linked_componentto detect this situationgit_export (string) – URL del repositori exportat
branch (string) – Branca del repositori, this is the actual repository branch even when URL interns del lloc web are used
push (string) – URL de pujada al repositori, this is the actual repository URL even when URL interns del lloc web are used
push_branch (string) – Branca per a la pujada, this is the actual repository branch even when URL interns del lloc web are used
filemask (string) – Filtre de fitxers
template (string) – Fitxer de llengua base monolingüe
edit_template (string) – Edita el fitxer base
intermediate (string) – Fitxer de llengua intermèdia
new_base (string) – Plantilla per a traduccions noves
file_format (string) – Format de fitxer
file_format_params (object) – Paràmetres del format de fitxer
license (string) – Llicència de la traducció
agreement (string) – Acord de llicència de col·laboració
new_lang (string) – Addició de traduccions noves
language_code_style (string) – Estil del codi de llengua
source_language (object) – source language object; see
GET /api/languages/(string:language)/check_flags (string) – Marques de traducció
priority (string) – Prioritat
enforced_checks (string) – Comprovacions obligatòries
restricted (string) – Accés restringit
repoweb (string) – Navegador del repositori
report_source_bugs (string) – Adreça per a informes d’errors de les cadenes d’origen
merge_style (string) – Estil de fusió
commit_message (string) – Commit, add, delete, merge, add-on, and merge request messages
add_message (string) – Commit, add, delete, merge, add-on, and merge request messages
delete_message (string) – Commit, add, delete, merge, add-on, and merge request messages
merge_message (string) – Commit, add, delete, merge, add-on, and merge request messages
addon_message (string) – Commit, add, delete, merge, add-on, and merge request messages
pull_message (string) – Commit, add, delete, merge, add-on, and merge request messages
allow_translation_propagation (string) – Permet la propagació de traduccions
hide_glossary_matches (boolean) – No mostris les coincidències del glossari
contribute_project_tm (boolean) – Contribueix a la memòria de traducció del projecte
enable_suggestions (string) – Habilita suggerències
suggestion_voting (string) – Vots als suggeriments
suggestion_autoaccept (string) – Accepta automàticament els suggeriments
push_on_commit (boolean) – Puja en fer una comissió; linked repositories expose the effective value from the linked component
locked (bool) – Whether component is locked, this field is read-only; see
GET /api/components/(string:project)/(string:component)/lock/commit_pending_age (integer) – Antiguitat dels canvis a publicar; linked repositories expose the effective value from the linked component
auto_lock_error (boolean) – Bloca en cas d’error; linked repositories expose the effective value from the linked component
language_regex (string) – Filtre de llengua
variant_regex (string) – Expressió regular de les variants
is_glossary (bool) – Utilitza com a glossari
glossary_color (string) – Color del glossari
repository_url (string) – URL to repository status; see
GET /api/components/(string:project)/(string:component)/repository/translations_url (string) – URL to translations list; see
GET /api/components/(string:project)/(string:component)/translations/lock_url (string) – URL to lock status; see
GET /api/components/(string:project)/(string:component)/lock/changes_list_url (string) – URL to changes list; see
GET /api/components/(string:project)/(string:component)/changes/task_url (string) – URL to a background task (if any); see
GET /api/tasks/(str:uuid)/reports_url (string) – URL to list or generate scoped reports; see
GET /api/components/(string:project)/(string:component)/reports/announcements_url (string) – URL to announcements; see
GET /api/components/(string:project)/(string:component)/announcements/
Repository fields, including
linked_component, are returned only with the View upstream repository location permission.Example JSON data:
{ "branch": "main", "file_format": "po", "file_format_params": { "po_line_wrap": 65535, "po_no_location": true }, "filemask": "po/*.po", "git_export": "", "license": "", "license_url": "", "name": "Weblate", "slug": "weblate", "project": { "name": "Hello", "slug": "hello", "source_language": { "code": "en", "direction": "ltr", "population": 159034349015, "name": "English", "url": "http://example.com/api/languages/en/", "web_url": "http://example.com/languages/en/" }, "url": "http://example.com/api/projects/hello/", "web": "https://weblate.org/", "web_url": "http://example.com/projects/hello/" }, "source_language": { "code": "en", "direction": "ltr", "population": 159034349015, "name": "English", "url": "http://example.com/api/languages/en/", "web_url": "http://example.com/languages/en/" }, "repo": "file:///home/nijel/work/weblate-hello", "template": "", "new_base": "", "url": "http://example.com/api/components/hello/weblate/", "vcs": "git", "web_url": "http://example.com/projects/hello/weblate/" }
- PATCH /api/components/(string: project)/(string: component)/¶
Edit a component by a PATCH request.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
source_language (string) – Project source language code (optional)
- Request JSON Object:
name (string) – name of component
slug (string) – slug of component
repo (string) – VCS repository URL
hide_glossary_matches (boolean) – No mostris les coincidències del glossari
contribute_project_tm (boolean) – Contribueix a la memòria de traducció del projecte
Linking to another Weblate component using an internal URL requires permission to edit the referenced component. Changing Accés restringit follows the same direct component-access restrictions as the web interface.
Exemple de CURL:
curl \ --data-binary '{"name": "new name"}' \ -H "Content-Type: application/json" \ -H "Authorization: Token TOKEN" \ PATCH http://example.com/api/projects/hello/components/
Exemple de sol·licitud JSON:
PATCH /api/projects/hello/components/ HTTP/1.1 Host: example.com Accept: application/json Content-Type: application/json Authorization: Token TOKEN Content-Length: 20 { "name": "new name" }
JSON response example:
HTTP/1.0 200 OK Date: Tue, 12 Apr 2016 09:32:50 GMT Server: WSGIServer/0.1 Python/2.7.11+ Vary: Accept, Accept-Language, Cookie X-Frame-Options: SAMEORIGIN Content-Type: application/json Content-Language: en Allow: GET, POST, HEAD, OPTIONS { "branch": "main", "file_format": "po", "file_format_params": { "po_line_wrap": 65535, "po_no_location": true }, "filemask": "po/*.po", "git_export": "", "license": "", "license_url": "", "name": "new name", "slug": "weblate", "project": { "name": "Hello", "slug": "hello", "source_language": { "code": "en", "direction": "ltr", "population": 159034349015, "name": "English", "url": "http://example.com/api/languages/en/", "web_url": "http://example.com/languages/en/" }, "url": "http://example.com/api/projects/hello/", "web": "https://weblate.org/", "web_url": "http://example.com/projects/hello/" }, "repo": "file:///home/nijel/work/weblate-hello", "template": "", "new_base": "", "url": "http://example.com/api/components/hello/weblate/", "vcs": "git", "web_url": "http://example.com/projects/hello/weblate/" }
- PUT /api/components/(string: project)/(string: component)/¶
Edit a component by a PUT request.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- Request JSON Object:
branch (string) – VCS repository branch
file_format (string) – file format of translations
file_format_params (object) – parameters related to the file
filemask (string) – mask of translation files in the repository
name (string) – name of component
slug (string) – slug of component
repo (string) – VCS repository URL
template (string) – base file for monolingual translations
new_base (string) – base file for adding new translations
vcs (string) – version control system
hide_glossary_matches (boolean) – No mostris les coincidències del glossari
contribute_project_tm (boolean) – Contribueix a la memòria de traducció del projecte
- DELETE /api/components/(string: project)/(string: component)/¶
Deletes a component.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- GET /api/components/(string: project)/(string: component)/changes/¶
Returns a list of component changes. This is essentially a component scoped
GET /api/changes/accepting same params.- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- Response JSON Object:
results (array) – array of component objects; see
GET /api/changes/(int:id)/
- GET /api/components/(string: project)/(string: component)/file/¶
Afegit a la versió 4.9.
Downloads all available translations associated with the component as an archive file using the requested format.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- Query Parameters:
format (string) – The archive format to use; If not specified, defaults to
zip; Supported formats:zipandzip:CONVERSIONwhereCONVERSIONis one of converters listed at Descàrrega de traduccions.
- GET /api/components/(string: project)/(string: component)/screenshots/¶
Returns a list of component screenshots.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- Response JSON Object:
results (array) – array of component screenshots; see
GET /api/screenshots/(int:id)/
- GET /api/components/(string: project)/(string: component)/lock/¶
Returns component lock status.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- Response JSON Object:
locked (boolean) – whether component is locked for updates
Example JSON data:
{ "locked": false }
- POST /api/components/(string: project)/(string: component)/lock/¶
Sets component lock status.
Response is same as
GET /api/components/(string:project)/(string:component)/lock/.- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- Request JSON Object:
lock – Boolean whether to lock or not.
Exemple de CURL:
curl \ -d lock=true \ -H "Authorization: Token TOKEN" \ http://example.com/api/components/hello/weblate/repository/
Exemple de sol·licitud JSON:
POST /api/components/hello/weblate/repository/ HTTP/1.1 Host: example.com Accept: application/json Content-Type: application/json Authorization: Token TOKEN Content-Length: 20 {"lock": true}
JSON response example:
HTTP/1.0 200 OK Date: Tue, 12 Apr 2016 09:32:50 GMT Server: WSGIServer/0.1 Python/2.7.11+ Vary: Accept, Accept-Language, Cookie X-Frame-Options: SAMEORIGIN Content-Type: application/json Content-Language: en Allow: GET, POST, HEAD, OPTIONS {"locked":true}
- GET /api/components/(string: project)/(string: component)/repository/¶
Returns information about the VCS repository status.
The response is same as for
GET /api/projects/(string:project)/repository/.Repository status requires component-wide permission on the component that owns the repository and every component linked to it, including components in other projects.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- Response JSON Object:
needs_commit (boolean) – whether there are any pending changes to commit
needs_merge (boolean) – whether there are any upstream changes to merge
needs_push (boolean) – whether there are any local changes to push
remote_commit (string) – Remote commit information
status (string) – VCS repository status as reported by VCS
merge_failure – Text describing merge failure or null if there is none
- POST /api/components/(string: project)/(string: component)/repository/¶
Performs the given operation on a VCS repository.
See
POST /api/projects/(string:project)/repository/for documentation.Repository operations require component-wide permission on the component that owns the repository and every component linked to it, including components in other projects.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- Request JSON Object:
operation (string) – Operation to perform: one of
push,pull,commit,reset,cleanup
- Response JSON Object:
result (boolean) – result of the operation
Exemple de CURL:
curl \ -d operation=pull \ -H "Authorization: Token TOKEN" \ http://example.com/api/components/hello/weblate/repository/
Exemple de sol·licitud JSON:
POST /api/components/hello/weblate/repository/ HTTP/1.1 Host: example.com Accept: application/json Content-Type: application/json Authorization: Token TOKEN Content-Length: 20 {"operation":"pull"}
JSON response example:
HTTP/1.0 200 OK Date: Tue, 12 Apr 2016 09:32:50 GMT Server: WSGIServer/0.1 Python/2.7.11+ Vary: Accept, Accept-Language, Cookie X-Frame-Options: SAMEORIGIN Content-Type: application/json Content-Language: en Allow: GET, POST, HEAD, OPTIONS {"result":true}
- GET /api/components/(string: project)/(string: component)/monolingual_base/¶
Downloads base file for monolingual translations.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- GET /api/components/(string: project)/(string: component)/new_template/¶
Downloads template file for new translations.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- GET /api/components/(string: project)/(string: component)/translations/¶
Returns a list of translation objects in the given component.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- Response JSON Object:
results (array) – array of translation objects; see
GET /api/translations/(string:project)/(string:component)/(string:language)/
- POST /api/components/(string: project)/(string: component)/translations/¶
Creates new translation in the given component.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- Request JSON Object:
language_code (string) – translation language code; see
GET /api/languages/(string:language)/from_component (array) – optional ordered list of source component references used for automatic translation. Accepts numeric component IDs or full Weblate component paths. For form submissions this field can be provided multiple times.
- Response JSON Object:
result (object) – new translation object created
Exemple de CURL:
curl \ -d language_code=cs \ -H "Authorization: Token TOKEN" \ http://example.com/api/projects/hello/components/
Exemple de sol·licitud JSON:
POST /api/projects/hello/components/ HTTP/1.1 Host: example.com Accept: application/json Content-Type: application/json Authorization: Token TOKEN Content-Length: 20 { "language_code": "cs", "from_component": ["hello/weblate", 123] }
JSON response example:
HTTP/1.0 200 OK Date: Tue, 12 Apr 2016 09:32:50 GMT Server: WSGIServer/0.1 Python/2.7.11+ Vary: Accept, Accept-Language, Cookie X-Frame-Options: SAMEORIGIN Content-Type: application/json Content-Language: en Allow: GET, POST, HEAD, OPTIONS { "failing_checks": 0, "failing_checks_percent": 0, "failing_checks_words": 0, "filename": "po/cs.po", "fuzzy": 0, "fuzzy_percent": 0.0, "fuzzy_words": 0, "have_comment": 0, "have_suggestion": 0, "is_template": false, "is_source": false, "language": { "code": "cs", "direction": "ltr", "population": 1303174280 "name": "Czech", "url": "http://example.com/api/languages/cs/", "web_url": "http://example.com/languages/cs/" }, "language_code": "cs", "id": 125, "last_author": null, "last_change": null, "share_url": "http://example.com/engage/hello/cs/", "total": 4, "total_words": 15, "translate_url": "http://example.com/translate/hello/weblate/cs/", "translated": 0, "translated_percent": 0.0, "translated_words": 0, "url": "http://example.com/api/translations/hello/weblate/cs/", "web_url": "http://example.com/projects/hello/weblate/cs/" }
- GET /api/components/(string: project)/(string: component)/statistics/¶
Returns paginated statistics for all translations within component.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
Vegeu també
Returned attributes are described in Estadístiques.
- GET /api/components/(string: project)/(string: component)/links/¶
Returns projects linked with a component.
Component managers see every linked project. Other callers see only linked projects they can access.
Afegit a la versió 4.5.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- Response JSON Object:
projects (array) – associated projects; see
GET /api/projects/(string:project)/
- POST /api/components/(string: project)/(string: component)/links/¶
Associate project with a component.
This requires permission to edit the component and the target project.
Afegit a la versió 4.5.
Canviat a la versió 5.17.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
- Form Parameters:
string project_slug – Llimac del projecte
int category_id – Category ID in the target project (optional). The category must belong to the specified project.
- DELETE /api/components/(string: project)/(string: component)/links/(string: project_slug)/¶
Remove association of a project with a component.
Afegit a la versió 4.5.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
project_slug (string) – Slug of the project to remove
- GET /api/components/(string: project)/(string: component)/reports/¶
Lists accessible reports generated directly for a component.
- POST /api/components/(string: project)/(string: component)/reports/¶
Schedules a report using the component as its scope. The request and response match
POST /api/reports/; scope fields must be omitted.
- GET /api/components/(string: project)/(string: component)/announcements/¶
Afegit a la versió 5.17: Returns announcements for a component.
- param project:
Project URL slug
- type project:
string
- param component:
Component URL slug
- type component:
string
- >json int id:
ID of the announcement
- >json string message:
announcement text
- >json string severity:
color of the message, one of
info(light blue),warning(yellow),danger(red),success(green)- >json date expiry:
hide after this date, ISO 8601 extended format date (optional)
- >json bool notify:
send notification to subscribed users? (optional)
- POST /api/components/(string: project)/(string: component)/announcements/¶
Afegit a la versió 5.17: Creates an announcement for a component.
- param project:
Project URL slug
- type project:
string
- param component:
Component URL slug
- type component:
string
- <json string message:
announcement text
- <json string severity:
color of the message, one of
info(light blue),warning(yellow),danger(red),success(green)- <json date expiry:
hide after this date, ISO 8601 extended format date (optional)
- <json bool notify:
send notification to subscribed users? (optional)
- DELETE /api/components/(string: project)/(string: component)/announcements/(int: announcement_id)/¶
Afegit a la versió 5.17: Deletes an announcement from a component.
- param project:
Project URL slug
- type project:
string
- param component:
Component URL slug
- type component:
string
- param announcement_id:
ID of the announcement to delete
- type announcement_id:
integer
Traduccions¶
- GET /api/translations/¶
Returns a list of translations.
Vegeu també
Translation object attributes are documented at
GET /api/translations/(string:project)/(string:component)/(string:language)/.
- GET /api/translations/(string: project)/(string: component)/(string: language)/¶
Returns information about the translation.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
language (string) – Codi d’idioma de traducció
- Response JSON Object:
component (object) – component object; see
GET /api/components/(string:project)/(string:component)/failing_checks (int) – number of strings failing checks
failing_checks_percent (float) – percentage of strings failing checks
failing_checks_words (int) – number of words with failing checks
filename (string) – translation filename
fuzzy (int) – number of fuzzy (marked for edit) strings
fuzzy_percent (float) – percentage of fuzzy (marked for edit) strings
fuzzy_words (int) – number of words in fuzzy (marked for edit) strings
have_comment (int) – number of strings with comment
have_suggestion (int) – number of strings with suggestion
is_template (boolean) – whether the translation has a monolingual base
language (object) – source language object; see
GET /api/languages/(string:language)/language_code (string) – language code used in the repository; this can be different from language code in the language object
last_author (string) – name of last author
last_change (timestamp) – last change timestamp
revision (string) – revision hash for the file
share_url (string) – URL for sharing leading to engagement page
total (int) – total number of strings
total_words (int) – total number of words
translate_url (string) – URL for translating
translated (int) – number of translated strings
translated_percent (float) – percentage of translated strings
translated_words (int) – number of translated words
repository_url (string) – URL to repository status; see
GET /api/translations/(string:project)/(string:component)/(string:language)/repository/file_url (string) – URL to file object; see
GET /api/translations/(string:project)/(string:component)/(string:language)/file/changes_list_url (string) – URL to changes list; see
GET /api/translations/(string:project)/(string:component)/(string:language)/changes/units_list_url (string) – URL to strings list; see
GET /api/translations/(string:project)/(string:component)/(string:language)/units/announcements_url (string) – URL to announcements; see
GET /api/translations/(string:project)/(string:component)/(string:language)/announcements/
Example JSON data:
{ "component": { "branch": "main", "file_format": "po", "file_format_params": { "po_line_wrap": 65535, "po_no_location": true }, "filemask": "po/*.po", "git_export": "", "license": "", "license_url": "", "name": "Weblate", "new_base": "", "project": { "name": "Hello", "slug": "hello", "source_language": { "code": "en", "direction": "ltr", "population": 159034349015, "name": "English", "url": "http://example.com/api/languages/en/", "web_url": "http://example.com/languages/en/" }, "url": "http://example.com/api/projects/hello/", "web": "https://weblate.org/", "web_url": "http://example.com/projects/hello/" }, "repo": "file:///home/nijel/work/weblate-hello", "slug": "weblate", "template": "", "url": "http://example.com/api/components/hello/weblate/", "vcs": "git", "web_url": "http://example.com/projects/hello/weblate/" }, "failing_checks": 3, "failing_checks_percent": 75.0, "failing_checks_words": 11, "filename": "po/cs.po", "fuzzy": 0, "fuzzy_percent": 0.0, "fuzzy_words": 0, "have_comment": 0, "have_suggestion": 0, "is_template": false, "language": { "code": "cs", "direction": "ltr", "population": 1303174280 "name": "Czech", "url": "http://example.com/api/languages/cs/", "web_url": "http://example.com/languages/cs/" }, "language_code": "cs", "last_author": "Weblate Admin", "last_change": "2016-03-07T10:20:05.499", "revision": "7ddfafe6daaf57fc8654cc852ea6be212b015792", "share_url": "http://example.com/engage/hello/cs/", "total": 4, "total_words": 15, "translate_url": "http://example.com/translate/hello/weblate/cs/", "translated": 4, "translated_percent": 100.0, "translated_words": 15, "url": "http://example.com/api/translations/hello/weblate/cs/", "web_url": "http://example.com/projects/hello/weblate/cs/" }
- DELETE /api/translations/(string: project)/(string: component)/(string: language)/¶
Deletes a translation.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
language (string) – Codi d’idioma de traducció
- GET /api/translations/(string: project)/(string: component)/(string: language)/changes/¶
Returns a list of translation changes. This is essentially a translations-scoped
GET /api/changes/accepting the same parameters.- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
language (string) – Codi d’idioma de traducció
- Response JSON Object:
results (array) – array of component objects; see
GET /api/changes/(int:id)/
- GET /api/translations/(string: project)/(string: component)/(string: language)/units/¶
Returns a list of translation units.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
language (string) – Codi d’idioma de traducció
q (string) – Search query string Searching (optional)
- Response JSON Object:
results (array) – array of component objects; see
GET /api/units/(int:id)/
- POST /api/translations/(string: project)/(string: component)/(string: language)/units/¶
Add new unit.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
language (string) – Codi d’idioma de traducció
- Request JSON Object:
key (string) – Monolingual translations: Key of translation unit
value (array) – Monolingual translations: Source strings (use single string if not creating plural)
context (string) – Bilingual translations: Context of a translation unit
source (array) – Bilingual translations: Source strings (use single string if not creating plural)
target (array) – Bilingual translations: Target strings (use single string if not creating plural)
state (int) – String state; see
GET /api/units/(int:id)/
- Response JSON Object:
unit (object) – newly created unit; see
GET /api/units/(int:id)/
Creating a unit in the approved state requires permission to review strings.
Vegeu també
- POST /api/translations/(string: project)/(string: component)/(string: language)/autotranslate/¶
Canviat a la versió 5.13: The
filter_typeparameter is no longer supported and filtering is done by theqparameter.Trigger automatic translation.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
language (string) – Codi d’idioma de traducció
- Request JSON Object:
mode (string) – Mode de traducció automatitzada
q (string) – Automatic translation search string, see Searching for strings.
auto_source (string) – Automatic translation source -
mtorotherscomponent (string) – Turn on contribution to shared translation memory for the project to get access to additional components.
engines (array) – Motors de traducció automàtica
threshold (string) – Llindar de puntuació
- GET /api/translations/(string: project)/(string: component)/(string: language)/file/¶
Download current translation file as it is stored in the VCS (without the
formatparameter) or converted to another format (see Descàrrega de traduccions).Nota
This API endpoint uses different logic for output than rest of API as it operates on whole file rather than on data. Set of accepted
formatparameter differs and without such parameter you get translation file as stored in VCS.- Response Headers:
Last-Modified – Timestamp of last change to this file.
- Request Headers:
If-Modified-Since – Skips response if the file has not been modified since that time.
- Query Parameters:
format – File format to use; if not specified no format conversion happens; see Descàrrega de traduccions for supported formats
q (string) – Filter downloaded strings, see Pàgina de cerca, only applicable when conversion is in place (
formatis specified).
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
language (string) – Codi d’idioma de traducció
- POST /api/translations/(string: project)/(string: component)/(string: language)/file/¶
Upload new file with translations.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
language (string) – Codi d’idioma de traducció
- Form Parameters:
string conflicts – How to deal with conflicts (
ignore,replace-translatedorreplace-approved), see Tractament de conflictesfile file – Uploaded file
string author_email – Author e-mail
string author_name – Author name
string method – Upload method (
translate,approve,suggest,fuzzy,replace,source,add), see Mètodes d’importacióstring fuzzy – Processament de cadenes difuses o marcades per a editar (buit,
process,approve)
Exemple de CURL:
curl -X POST \ -F file=@strings.xml \ -H "Authorization: Token TOKEN" \ http://example.com/api/translations/hello/android/cs/file/
- GET /api/translations/(string: project)/(string: component)/(string: language)/repository/¶
Returns information about the VCS repository status.
The response is same as for
GET /api/components/(string:project)/(string:component)/repository/.Repository status requires component-wide permission on the component that owns the repository and every component linked to it, including components in other projects. A permission limited to the requested language is not sufficient.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
language (string) – Codi d’idioma de traducció
- POST /api/translations/(string: project)/(string: component)/(string: language)/repository/¶
Performs given operation on the VCS repository.
See
POST /api/projects/(string:project)/repository/for documentation.Repository operations require component-wide permission on the component that owns the repository and every component linked to it, including components in other projects. A permission limited to the requested language is not sufficient.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
language (string) – Codi d’idioma de traducció
- Request JSON Object:
operation (string) – Operation to perform: one of
push,pull,commit,reset,cleanup
- Response JSON Object:
result (boolean) – result of the operation
- GET /api/translations/(string: project)/(string: component)/(string: language)/statistics/¶
Returns detailed translation statistics.
- Parameters:
project (string) – Project URL slug
component (string) – Component URL slug
language (string) – Codi d’idioma de traducció
Vegeu també
Returned attributes are described in Estadístiques.
- GET /api/translations/(string: project)/(string: component)/(string: language)/announcements/¶
Afegit a la versió 5.17: Returns announcements for a translation.
- param project:
Project URL slug
- type project:
string
- param component:
Component URL slug
- type component:
string
- param language:
Codi d’idioma de traducció
- type language:
string
- >json int id:
ID of the announcement
- >json string message:
announcement text
- >json string severity:
color of the message, one of
info(light blue),warning(yellow),danger(red),success(green)- >json date expiry:
hide after this date, ISO 8601 extended format date (optional)
- >json bool notify:
send notification to subscribed users? (optional)
- POST /api/translations/(string: project)/(string: component)/(string: language)/announcements/¶
Afegit a la versió 5.17: Creates an announcement for a translation.
- param project:
Project URL slug
- type project:
string
- param component:
Component URL slug
- type component:
string
- param language:
Codi d’idioma de traducció
- type language:
string
- <json string message:
announcement text
- <json string severity:
color of the message, one of
info(light blue),warning(yellow),danger(red),success(green)- <json date expiry:
hide after this date, ISO 8601 extended format date (optional)
- <json bool notify:
send notification to subscribed users? (optional)
- DELETE /api/translations/(string: project)/(string: component)/(string: language)/announcements/(int: announcement_id)/¶
Afegit a la versió 5.17: Deletes an announcement from a translation.
- param project:
Project URL slug
- type project:
string
- param component:
Component URL slug
- type component:
string
- param language:
Codi d’idioma de traducció
- type language:
string
- param announcement_id:
ID of the announcement to delete
- type announcement_id:
integer
Memòria¶
Afegit a la versió 4.14.
- GET /api/memory/¶
Returns a list of memory results.
- Query Parameters:
source – Case-insensitive substring filter on source text (optional)
source_language – Source language code filter (optional)
target_language – Target language code filter (optional)
project – Project slug filter (optional)
- POST /api/memory/lookup/¶
Looks up translation memory matches for the provided source strings.
- Query Parameters:
source_language – Source language code
target_language – Target language code
project – Project slug filter (optional)
exact – Return exact matches only and skip fuzzy matching (optional)
- Request JSON Object:
strings (array) – List of source strings to look up
- Response JSON Object:
results (array) – Ordered lookup results with the best match for each query or
nullwhen no match was found
- DELETE /api/memory/(int: memory_object_id)/¶
Deletes a memory object
- Parameters:
memory_object_id – Memory Object ID
Units¶
Una «unitat» és una única peça d’una traducció que combina una cadena font amb una cadena traduïda corresponent i també conté algunes metadades relacionades. El terme es deriva de translate.storage.base.TranslationUnit a Translate Toolkit i XLIFF.
- GET /api/units/¶
Returns a list of translation units.
- Parameters:
q (string) – Search query string Searching (optional)
Vegeu també
Unit object attributes are documented at
GET /api/units/(int:id)/.
- GET /api/units/(int: id)/¶
Canviat a la versió 4.3: The
targetandsourceare now arrays to properly handle plural strings.Canviat a la versió 5.6: The
last_updatedattribute is now exposed.Returns information about the translation unit.
- Parameters:
id (int) – Unit ID
- Response JSON Object:
translation (string) – URL of a related translation object
source (array) – source string
previous_source (string) – previous source string used for fuzzy matching
target (array) – target string
id_hash (string) – unique identifier of the unit
content_hash (string) – unique identifier of the source string
location (string) – location of the unit in source code
context (string) – translation unit context
note (string) – translation unit note
flags (string) – translation unit flags
labels (array) – translation unit labels, available on source units
state (int) – unit state, 0 - untranslated, 10 - needs editing, 20 - translated, 30 - approved, 100 - read-only
fuzzy (boolean) – whether the unit is fuzzy or marked for review
translated (boolean) – whether the unit is translated
approved (boolean) – whether the translation is approved
position (int) – unit position in translation file
has_suggestion (boolean) – whether the unit has suggestions
has_comment (boolean) – whether the unit has comments
has_failing_check (boolean) – whether the unit has failing checks
num_words (int) – number of source words
priority (int) – translation priority; 100 is default
id (int) – unit identifier
explanation (string) – String explanation, available on source units, see Informació addicional sobre les cadenes d’origen
extra_flags (string) – Additional string flags, available on source units, see Personalització del comportament mitjançant banderes
web_url (string) – URL where the unit can be edited
source_unit (string) – Source unit link; see
GET /api/units/(int:id)/pending (boolean) – whether the unit is pending for write
timestamp (timestamp) – string age
last_updated (timestamp) – last string update
- PATCH /api/units/(int: id)/¶
Afegit a la versió 4.3.
Performs partial update on translation unit.
- Parameters:
id (int) – Unit ID
- Request JSON Object:
state (int) – unit state, 0 - untranslated, 10 - needs editing, 20 - translated, 30 - approved (need review workflow enabled, see Revisors dedicats)
target (array) – target string
explanation (string) – String explanation, available on source units, see Informació addicional sobre les cadenes d’origen
extra_flags (string) – Additional string flags, available on source units, see Personalització del comportament mitjançant banderes
labels (array) – labels, available on source units
- PUT /api/units/(int: id)/¶
Afegit a la versió 4.3.
Performs full update on translation unit.
- Parameters:
id (int) – Unit ID
- Request JSON Object:
state (int) – unit state, 0 - untranslated, 10 - needs editing, 20 - translated, 30 - approved (need review workflow enabled, see Revisors dedicats)
target (array) – target string
explanation (string) – String explanation, available on source units, see Informació addicional sobre les cadenes d’origen
extra_flags (string) – Additional string flags, available on source units, see Personalització del comportament mitjançant banderes
labels (array) – labels, available on source units
- DELETE /api/units/(int: id)/¶
Afegit a la versió 4.3.
Deletes a translation unit.
- Parameters:
id (int) – Unit ID
- GET /api/units/(int: id)/translations/¶
Afegit a la versió 5.11.
Returns a list of all target translation units for the given source translation unit.
- POST /api/units/(int: id)/comments/¶
Afegit a la versió 5.12.
Create a new comment on the given translation unit.
- Parameters:
id (int) – Unit ID
- Request JSON Object:
scope (string) – comment scope - global, translation (available on all non-source units), report (need review workflow enabled, see Revisors dedicats)
comment (string) – content of the new comment, you can use Markdown and mention users by @username.
user_email (string) – commenter’s email, can be set only by project admins and defaults to the authenticated user.
timestamp (string) – creation timestamp of the comment, can be set only by project admins and defaults to now.
- Response JSON Object:
id (int) – comment identifier
comment (string) – content of the new comment
user (string) – URL of the commenter’s object
timestamp (string) – creation timestamp of the comment
- GET /api/units/(int: id)/comments/¶
Afegit a la versió 5.15.
Returns a list of comments on a given translation unit
- Parameters:
id (int) – Unit ID
- Response JSON Object:
id (int) – comment identifier
comment (string) – content of the comment
timestamp (string) – creation timestamp of the comment
user (string) – URL of the commenter’s object
- POST /api/units/(int: id)/suggestions/¶
Afegit a la versió 2026.8.
Create a new suggestion on the given translation unit.
Requires authentication and the Add suggestion permission on the translation. Suggestions must be enabled on the translation, the translation must not be read-only, and the user must have signed any required contributor agreement.
- Parameters:
id (int) – Unit ID
- Request JSON Object:
target (array) – suggested translation text as a list of plural forms; use a single-element array for non-plural strings
- Response JSON Object:
id (int) – suggestion identifier
target (array) – suggested translation text as a list of plural forms
unit (string) – URL of the related unit object
user (string) – URL of the suggester’s object
timestamp (string) – creation timestamp of the suggestion
votes (int) – net vote count for the suggestion
Users who also have the Vote on suggestion permission automatically upvote their suggestion when it is created.
When the same suggestion already exists from another user and the caller has the Vote on suggestion permission, the existing suggestion is upvoted instead and the response uses the same format as
POST /api/suggestions/(int:id)/vote/(HTTP status 200 instead of 201).
- GET /api/units/(int: id)/suggestions/¶
Afegit a la versió 2026.8.
Returns a paginated list of suggestions on a given translation unit.
- Parameters:
id (int) – Unit ID
- Response JSON Object:
results (array) – array of suggestion objects; see
GET /api/suggestions/(int:id)/
Suggeriments¶
- GET /api/suggestions/¶
Afegit a la versió 2026.8.
Returns a paginated list of suggestions the user has access to, ordered by creation time (most recent first).
Vegeu també
Suggestion object attributes are documented at
GET /api/suggestions/(int:id)/.- Response JSON Object:
results (array) – array of suggestion objects; see
GET /api/suggestions/(int:id)/
- GET /api/suggestions/(int: id)/¶
Afegit a la versió 2026.8.
Returns information about a suggestion.
- Parameters:
id (int) – Suggestion ID
- Response JSON Object:
id (int) – suggestion identifier
target (array) – suggested translation text as a list of plural forms
unit (string) – URL of the related unit object
user (string) – URL of the suggester’s object, or
nullfor anonymous suggestionstimestamp (string) – creation timestamp of the suggestion
votes (int) – net vote count for the suggestion
- DELETE /api/suggestions/(int: id)/¶
Afegit a la versió 2026.8.
Delete or reject a suggestion.
Requires the Delete suggestion permission on the related translation, or ownership of the suggestion.
- Parameters:
id (int) – Suggestion ID
- Request JSON Object:
rejection_reason (string) – optional reason for rejecting the suggestion
is_spam (boolean) – whether to report the suggestion as spam
The request body is optional. When
is_spamistrue, the suggestion content is reported to the antispam service.
- POST /api/suggestions/(int: id)/accept/¶
Afegit a la versió 2026.8.
Accept a suggestion and apply it to the translation unit.
Requires the Accept suggestion permission on the related translation unit.
- Parameters:
id (int) – Suggestion ID
- Request JSON Object:
approve (boolean) – whether to mark the translation as approved after accepting; requires the Review strings permission and review workflow enabled (see Revisors dedicats)
- Response JSON Object:
result (string) –
acceptedwhen the suggestion was accepted
- POST /api/suggestions/(int: id)/vote/¶
Afegit a la versió 2026.8.
Vote for or against a suggestion.
Requires the Vote on suggestion permission and voting enabled on the related translation (see Vots als suggeriments).
- Parameters:
id (int) – Suggestion ID
- Request JSON Object:
value (int) –
1to vote for the suggestion or-1to vote against it
- Response JSON Object:
result (string) –
votedwhen the suggestion remains open;acceptedwhen auto-accept applied itsuggestion (object) – updated suggestion object when
resultisvoted;nullwhenresultisaccepted
Canvis¶
- GET /api/changes/¶
Canviat a la versió 4.1: Filtering of changes was introduced in the 4.1 release.
Returns a list of translation changes.
Vegeu també
Change object attributes are documented at
GET /api/changes/(int:id)/.- Query Parameters:
user (string) – Username of the user to filter by
action (int) – Action to filter, can be used several times; see Selected change events for available values
timestamp_after (timestamp) – ISO 8601 formatted timestamp to list changes after
timestamp_before (timestamp) – ISO 8601 formatted timestamp to list changes before
- GET /api/changes/(int: id)/¶
Returns information about the translation change.
- Parameters:
id (int) – Change ID
- Response JSON Object:
unit (string) – URL of a related unit object
translation (string) – URL of a related translation object
component (string) – URL of a related component object
user (string) – URL of a related user object
author (string) – URL of a related author object
timestamp (timestamp) – event timestamp
action (int) – numeric identification of action
action_name (string) – text description of action
target (string) – event changed text
old (string) – previous text
details (object) – additional details about the change
id (int) – change identifier
Captures de pantalla¶
- GET /api/screenshots/¶
Returns a list of screenshots.
Vegeu també
Screenshot object attributes are documented at
GET /api/screenshots/(int:id)/.
- GET /api/screenshots/(int: id)/¶
Returns information about the screenshot.
- Parameters:
id (int) – Screenshot ID
- Response JSON Object:
name (string) – name of a screenshot
repository_filename (string) – repository path used to match repository-based screenshot updates
translation (string) – URL of a related translation object
file_url (string) – URL to download a file; see
GET /api/screenshots/(int:id)/file/units (array) – link to associated source string information; see
GET /api/units/(int:id)/
- GET /api/screenshots/(int: id)/file/¶
Download the screenshot image.
- Parameters:
id (int) – Screenshot ID
- POST /api/screenshots/(int: id)/file/¶
Replace screenshot image.
- Parameters:
id (int) – Screenshot ID
- Form Parameters:
file image – Uploaded file
Exemple de CURL:
curl -X POST \ -F image=@image.png \ -H "Authorization: Token TOKEN" \ http://example.com/api/screenshots/1/file/
- POST /api/screenshots/(int: id)/units/¶
Associate source string with screenshot.
- Parameters:
id (int) – Screenshot ID
- Form Parameters:
string unit_id – Unit ID
- Response JSON Object:
name (string) – name of a screenshot
translation (string) – URL of a related translation object
file_url (string) – URL to download a file; see
GET /api/screenshots/(int:id)/file/units (array) – link to associated source string information; see
GET /api/units/(int:id)/
- DELETE /api/screenshots/(int: id)/units/(int: unit_id)¶
Remove source string association with screenshot.
- Parameters:
id (int) – Screenshot ID
unit_id – Source string unit ID
- POST /api/screenshots/¶
Creates a new screenshot.
- Form Parameters:
file image – Uploaded file
string name – Screenshot name
string project_slug – Llimac del projecte
string component_slug – Component llimac
string language_code – Codi de llengua
string repository_filename – Optional repository path used to associate later repository updates
- Response JSON Object:
name (string) – name of a screenshot
repository_filename (string) – repository path used to match repository-based screenshot updates
translation (string) – URL of a related translation object
file_url (string) – URL to download a file; see
GET /api/screenshots/(int:id)/file/units (array) – link to associated source string information; see
GET /api/units/(int:id)/
- PATCH /api/screenshots/(int: id)/¶
Edit partial information about screenshot.
- Parameters:
id (int) – Screenshot ID
- Response JSON Object:
name (string) – name of a screenshot
repository_filename (string) – repository path used to match repository-based screenshot updates
translation (string) – URL of a related translation object
file_url (string) – URL to download a file; see
GET /api/screenshots/(int:id)/file/units (array) – link to associated source string information; see
GET /api/units/(int:id)/
- PUT /api/screenshots/(int: id)/¶
Edit full information about screenshot.
- Parameters:
id (int) – Screenshot ID
- Response JSON Object:
name (string) – name of a screenshot
repository_filename (string) – repository path used to match repository-based screenshot updates
translation (string) – URL of a related translation object
file_url (string) – URL to download a file; see
GET /api/screenshots/(int:id)/file/units (array) – link to associated source string information; see
GET /api/units/(int:id)/
- DELETE /api/screenshots/(int: id)/¶
Delete screenshot.
- Parameters:
id (int) – Screenshot ID
Complements¶
Afegit a la versió 4.4.1.
- GET /api/addons/¶
Returns a list of add-ons the caller can manage. Site-wide add-on managers can access site-wide add-ons without gaining access to project or component add-on configuration.
Vegeu també
Add-on object attributes are documented at
GET /api/addons/(int:id)/.
- GET /api/addons/(int: id)/¶
Returns information about add-on information.
- Parameters:
id (int) – Add-on ID
- Response JSON Object:
name (string) – name of an add-on
component (string) – URL of a related component object
configuration (object) – Optional add-on configuration
Vegeu també
- POST /api/components/(string: project)/(string: component)/addons/¶
Creates a new add-on.
- Parameters:
project_slug (string) – Llimac del projecte
component_slug (string) – Component llimac
- Request JSON Object:
name (string) – name of an add-on
configuration (object) – Optional add-on configuration
- PATCH /api/addons/(int: id)/¶
Edit partial information about add-on.
- Parameters:
id (int) – Add-on ID
- Response JSON Object:
configuration (object) – Optional add-on configuration
- PUT /api/addons/(int: id)/¶
Edit full information about add-on.
- Parameters:
id (int) – Add-on ID
- Response JSON Object:
configuration (object) – Optional add-on configuration
- DELETE /api/addons/(int: id)/¶
Delete add-on.
- Parameters:
id (int) – Add-on ID
- POST /api/addons/(int: id)/trigger/¶
Trigger a manual run of an add-on that supports manual triggering.
Afegit a la versió 5.17.1.
- Parameters:
id (int) – Add-on ID
Llistes de components¶
Afegit a la versió 4.0.
- GET /api/component-lists/¶
Returns a list of component lists.
Vegeu també
Component list object attributes are documented at
GET /api/component-lists/(str:slug)/.
- GET /api/component-lists/(str: slug)/¶
Returns information about component list.
- Parameters:
slug (string) – Component list slug
- Response JSON Object:
name (string) – name of a component list
slug (string) – slug of a component list
show_dashboard (boolean) – whether to show it on a dashboard
components (array) – link to associated components; see
GET /api/components/(string:project)/(string:component)/auto_assign (array) – automatic assignment rules
- PUT /api/component-lists/(str: slug)/¶
Changes the component list parameters.
- Parameters:
slug (string) – Component list slug
- Request JSON Object:
name (string) – name of a component list
slug (string) – slug of a component list
show_dashboard (boolean) – whether to show it on a dashboard
- PATCH /api/component-lists/(str: slug)/¶
Changes the component list parameters.
- Parameters:
slug (string) – Component list slug
- Request JSON Object:
name (string) – name of a component list
slug (string) – slug of a component list
show_dashboard (boolean) – whether to show it on a dashboard
- DELETE /api/component-lists/(str: slug)/¶
Deletes the component list.
- Parameters:
slug (string) – Component list slug
- GET /api/component-lists/(str: slug)/components/¶
Afegit a la versió 5.0.1: List components in a component list.
- param slug:
Component list slug
- type slug:
string
- form string component_id:
Component ID
- >json array results:
array of component objects; see
GET /api/components/(string:project)/(string:component)/
- POST /api/component-lists/(str: slug)/components/¶
Associate component with a component list.
- Parameters:
slug (string) – Component list slug
- Form Parameters:
string component_id – Component ID
- DELETE /api/component-lists/(str: slug)/components/(str: component_slug)¶
Disassociate a component from the component list.
- Parameters:
slug (string) – Component list slug
component_slug (string) – Component llimac
Glossari¶
Canviat a la versió 4.5: Els glossaris ara s’emmagatzemen com a components habituals, traduccions i cadenes, si us plau, utilitzeu l’API corresponent.
Informes¶
- GET /api/reports/¶
Lists stored reports accessible to the authenticated user. The optional
kind,workspace,project,category, andcomponentquery parameters filter the result.
- POST /api/reports/¶
Schedules report generation and returns
202 Acceptedwith atask_url. The task result links to the created report. Thekindis one ofcredits,contributor_stats,cost_estimate, ortranslator_work. Specify at most one ofworkspace,project,category, orcomponent; omitting all of them creates a global report. Contribution reports requirestartandendISO 8601 timestamps.
- GET /api/reports/(int: id)/¶
Returns report metadata, generation parameters, stored JSON
data, and links to the JSON, HTML, and reStructuredText renderings.
- GET /api/reports/(int: id)/json/¶
Downloads only the stored report data without metadata.
- GET /api/reports/(int: id)/html/¶
Downloads an HTML rendering of the stored report.
- GET /api/reports/(int: id)/rst/¶
Downloads a reStructuredText rendering of the stored report.
Tasks¶
Afegit a la versió 4.4.
- GET /api/tasks/¶
Listing of the tasks is currently not available.
- GET /api/tasks/(str: uuid)/¶
Returns information about a task.
Authentication is required.
- Parameters:
uuid (string) – Task UUID
- Response JSON Object:
completed (boolean) – Whether the task has completed
progress (int) – Task progress in percent
result (object) – Task result or progress details
log (string) – Task log
Estadístiques¶
- GET /api/(str: object)/statistics/¶
There are several statistics endpoints for objects and all of them contain same structure.
- Parameters:
object (string) – URL path
- Response JSON Object:
total (int) – total number of strings
total_words (int) – total number of words
total_chars (int) – total number of characters
last_change (timestamp) – date of last change
translated (int) – number of translated strings
translated_percent (float) – percentage of translated strings
translated_words (int) – number of translated words
translated_words_percent (float) – percentage of translated words
translated_chars (int) – number of translated characters
translated_chars_percent (float) – percentage of translated characters
fuzzy (int) – number of fuzzy (marked for edit) strings
fuzzy_words (int) – number of fuzzy (marked for edit) words
fuzzy_chars (int) – number of fuzzy (marked for edit) characters
fuzzy_percent (float) – percentage of fuzzy (marked for edit) strings
fuzzy_words_percent (float) – percentage of fuzzy (marked for edit) words
fuzzy_chars_percent (float) – percentage of fuzzy (marked for edit) characters
failing (int) – number of failing checks
failing_percent (float) – percentage of failing checks
approved (int) – number of approved strings
approved_words (int) – number of approved words
approved_chars (int) – number of approved characters
approved_percent (float) – percentage of approved strings
approved_words_percent (float) – percentage of approved words
approved_chars_percent (float) – percentage of approved characters
readonly (int) – number of read-only strings
readonly_words (int) – number of read-only words
readonly – number of read-only characters
readonly_percent (float) – percentage of read-only strings
readonly_words_percent (float) – percentage of read-only words
readonly_char_percent (float) – percentage of read-only characters
suggestions (int) – number of strings with suggestions
comments (int) – number of strings with comments
name (string) – object name
url (string) – URL to access the object (if applicable)
url_translate (string) – URL to access the translation (if applicable)
code (string) – language code (if applicable)
Vegeu també
Estadístiques¶
- GET /api/metrics/¶
Returns server metrics.
Canviat a la versió 5.6.1: Metrics can now be exposed in OpenMetrics compatible format with
?format=openmetrics.Canviat a la versió 2026.8: OpenMetrics responses now include
HELPandTYPEmetadata and use the versioned OpenMetrics content type.- Response JSON Object:
units (int) – Number of units
units_translated (int) – Number of translated units
users (int) – Number of users
changes (int) – Number of changes
projects (int) – Number of projects
components (int) – Number of components
translations (int) – Number of translations
languages (int) – Number of used languages
checks (int) – Number of triggered quality checks
configuration_errors (int) – Number of configuration errors
suggestions (int) – Number of pending suggestions
celery_queues (object) – Lengths of Celery queues, see Tasques de fons amb api
name (string) – Configured server name
version (string) – Running Weblate version, included when
VERSION_DISPLAYisshoworsoft
In OpenMetrics format, the version is exposed as
weblate_info{version="..."} 1whenVERSION_DISPLAYisshoworsoft. All metrics are exposed as gauges.
Project metrics expose translation statistics for each visible component and
language at GET /api/projects/(string:project)/metrics/. They include
translated, total, fuzzy, failing-check, and approved string, word, and
character counts; suggestions; comments; and translated and approved
percentages.
Cerca¶
- GET /api/search/¶
Afegit a la versió 4.18.
Returns site-wide search results as a list. There is no pagination on the result set, only first few matches are returned for each category.
The search looks for:
Projectes
Categories
Components
Llengües
Usuaris
- Parameters:
q – Search query string
- Response JSON Object:
name (str) – Name of the matched item.
url (str) – Web URL of the matched item.
category (str) – Category of the matched item.
Categories¶
- GET /api/categories/¶
Afegit a la versió 5.0.
Lists available categories. See
GET /api/categories/(int:id)/for field definitions.
- POST /api/categories/¶
Afegit a la versió 5.0.
Creates a new category. See
GET /api/categories/(int:id)/for field definitions.
- GET /api/categories/(int: id)/¶
Afegit a la versió 5.0.
- Parameters:
id (int) – Category ID
- Response JSON Object:
name (str) – Name of category.
slug (str) – Slug of category.
project (str) – Link to a project.
category (str) – Link to a parent category.
announcements_url (string) – URL to announcements; see
GET /api/categories/(int:id)/announcements/reports_url (string) – URL to list or generate scoped reports; see
GET /api/categories/(int:id)/reports/
- PATCH /api/categories/(int: id)/¶
Afegit a la versió 5.0: Edit partial information about category.
- param id:
Category ID
- type id:
int
- >json object configuration:
Optional category configuration
- PUT /api/categories/(int: id)/¶
Afegit a la versió 5.0: Edit full information about category.
- param id:
Category ID
- type id:
int
- >json object configuration:
Optional category configuration
- DELETE /api/categories/(int: id)/¶
Afegit a la versió 5.0: Delete category.
- param id:
Category ID
- type id:
int
- GET /api/categories/(int: id)/statistics/¶
Afegit a la versió 5.5.
Returns statistics for a category.
- Parameters:
id (int) – Category ID
Vegeu també
Returned attributes are described in Estadístiques.
- GET /api/categories/(int: id)/reports/¶
Lists accessible reports generated directly for a category.
- POST /api/categories/(int: id)/reports/¶
Schedules a report using the category as its scope. The request and response match
POST /api/reports/; scope fields must be omitted.
- GET /api/categories/(int: id)/announcements/¶
Afegit a la versió 5.17.1: Returns announcements for a category.
- param id:
Category ID
- type id:
int
- >json int id:
ID of the announcement
- >json string message:
announcement text
- >json string severity:
color of the message, one of
info(light blue),warning(yellow),danger(red),success(green)- >json date expiry:
hide after this date, ISO 8601 extended format date (optional)
- >json bool notify:
send notification to subscribed users? (optional)
- POST /api/categories/(int: id)/announcements/¶
Afegit a la versió 5.17.1: Creates an announcement for a category.
- param id:
Category ID
- type id:
int
- <json string message:
announcement text
- <json string severity:
color of the message, one of
info(light blue),warning(yellow),danger(red),success(green)- <json date expiry:
hide after this date, ISO 8601 extended format date (optional)
- <json bool notify:
send notification to subscribed users? (optional)
- DELETE /api/categories/(int: id)/announcements/(int: announcement_id)/¶
Afegit a la versió 5.17.1: Deletes an announcement from a category.
- param id:
Category ID
- type id:
int
- param announcement_id:
ID of the announcement to delete
- type announcement_id:
integer
Punts d’inserció de notificacions¶
Notification hooks allow external applications to notify Weblate that the VCS repository has been updated. Weblate matches the delivery to components by repository URL; see Matching webhook targets.
The generic hook endpoints return diagnostics intended to help configure
repository notifications. The match_status object contains:
repository_matchesNumber of components whose repository URL matches the payload.
branch_matchesNumber of repository matches whose configured branch matches the payload. For events without a branch, every repository match is counted as a branch match.
enabled_hook_matchesNumber of branch matches whose project has hooks enabled.
A successful update response names the updated project/component slugs in
message and returns their absolute API URLs in updated_components. These
diagnostics include private projects and restricted components because matching
does not apply user access control. Components managed through an authenticated
integration are excluded from generic matching and diagnostics; currently this
applies to the GitHub (via Weblate GitHub app) VCS backend. When an
update event completes target matching but schedules no update, the response
uses HTTP status code 202 and retains match_status so the repository,
branch, and project hook settings can be diagnosed. Ping and ignored events
return HTTP status code 201 without matching diagnostics. These responses can
confirm that a supplied repository URL is registered, but do not grant access
to the linked API objects or expose repository content, translations, or
credentials. See Matching webhook targets for the security and compatibility
implications.
Podeu utilitzar els punts finals del dipòsit per a projectes, components i traduccions per actualitzar repositoris individuals; vegeu POST /api/projects/(string:project)/repository/ per a la documentació.
- GET /hooks/update/(string: project)/(string: component)/¶
Obsolet des de la versió 2.6: Please use
POST /api/components/(string:project)/(string:component)/repository/instead which works properly with authentication for ACL limited projects.S’ha eliminat a la versió 5.14.
- GET /hooks/update/(string: project)/¶
Obsolet des de la versió 2.6: Please use
POST /api/projects/(string:project)/repository/instead which works properly with authentication for ACL limited projects.S’ha eliminat a la versió 5.14.
- POST /hooks/github/¶
Special hook for handling GitHub notifications and automatically updating matching components.
Nota
GitHub includes direct support for notifying Weblate: enable Weblate service hook in repository settings and set the URL to the URL of your Weblate installation.
Vegeu també
- Notificacions de GitHub
For instruction on setting up GitHub integration
- https://docs.github.com/en/get-started/customizing-your-github-workflow/exploring-integrations/about-webhooks
Generic information about GitHub Webhooks
ENABLE_HOOKSFor enabling hooks for whole Weblate
- POST /hooks/gitlab/¶
Special hook for handling GitLab notifications and automatically updating matching components.
Vegeu també
- Notificacions de GitLab
For instruction on setting up GitLab integration
- https://docs.gitlab.com/user/project/integrations/webhooks/
Generic information about GitLab Webhooks
ENABLE_HOOKSFor enabling hooks for whole Weblate
- POST /hooks/bitbucket/¶
Special hook for handling Bitbucket notifications and automatically updating matching components.
Vegeu també
- Notificacions de Bitbucket
For instruction on setting up Bitbucket integration
- https://support.atlassian.com/bitbucket-cloud/docs/manage-webhooks/
Generic information about Bitbucket Webhooks
ENABLE_HOOKSFor enabling hooks for whole Weblate
- POST /hooks/pagure/¶
Special hook for handling Pagure notifications and automatically updating matching components.
Vegeu també
- Pàgina de notificacions
For instruction on setting up Pagure integration
- https://docs.pagure.org/pagure/usage/using_webhooks.html
Generic information about Pagure Webhooks
ENABLE_HOOKSFor enabling hooks for whole Weblate
- POST /hooks/azure/¶
Special hook for handling Azure DevOps notifications and automatically updating matching components.
Nota
Please ensure that Resource details to send is set to All, otherwise Weblate will not be able to match your Azure repository.
Vegeu també
- Notificacions d’Azure Repos
For instruction on setting up Azure integration
- https://learn.microsoft.com/en-us/azure/devops/service-hooks/services/webhooks?view=azure-devops
Generic information about Azure DevOps Web Hooks
ENABLE_HOOKSFor enabling hooks for whole Weblate
- POST /hooks/gitea/¶
Special hook for handling Gitea Webhook notifications and automatically updating matching components.
Vegeu també
- Notificacions de Gitea
For instruction on setting up Gitea integration
- https://docs.gitea.com/usage/repository/webhooks
Generic information about Gitea Webhooks
ENABLE_HOOKSFor enabling hooks for whole Weblate
- POST /hooks/forgejo/¶
Special hook for handling Forgejo Webhook notifications and automatically updating matching components.
Vegeu també
- Notificacions de Forgejo
For instruction on setting up Forgejo integration
- https://forgejo.org/docs/latest/user/webhooks/
Generic information about Forgejo Webhooks
ENABLE_HOOKSFor enabling hooks for whole Weblate
- POST /hooks/gitee/¶
Special hook for handling Gitee Webhook notifications and automatically updating matching components.
Vegeu també
- Notificacions de l’allotjament
For instruction on setting up Gitee integration
- https://help.gitee.com/webhook
Generic information about Gitee Webhooks
ENABLE_HOOKSFor enabling hooks for whole Weblate
Canals RSS¶
Els canvis en les traduccions s’exporten als canals RSS.
The feeds contain only changes in projects and components the requesting user can access.
Els canals RSS filtrats estan disponibles al navegador de canvis. Aquests accepten els mateixos filtres que la pàgina de canvis, per exemple action, user, exclude_user i period.
- GET /changes/rss/¶
Retrieves RSS feed with recent changes matching changes browsing filters.
- GET /changes/rss/(string: project)/(string: component)/(string: language)/¶
Retrieves RSS feed with recent changes matching changes browsing filters in a translation.
- GET /changes/rss/(string: project)/(string: component)/¶
Retrieves RSS feed with recent changes matching changes browsing filters in a component.
- GET /changes/rss/(string: project)/-/(string: language)/¶
Retrieves RSS feed with recent changes matching changes browsing filters in a project language.
- GET /changes/rss/-/-/(string: language)/¶
Retrieves RSS feed with recent changes matching changes browsing filters in a language.
- GET /exports/rss/(string: project)/(string: component)/(string: language)/¶
Retrieves RSS feed with recent changes for a translation.
- GET /exports/rss/(string: project)/(string: component)/¶
Retrieves RSS feed with recent changes for a component.
- GET /exports/rss/(string: project)/¶
Retrieves RSS feed with recent changes for a project.
- GET /exports/rss/language/(string: language)/¶
Retrieves RSS feed with recent changes for a language.
- GET /exports/rss/¶
Retrieves RSS feed with recent changes for Weblate instance.
Vegeu també