Weblate’s Web API

Notification hooks

Notification hooks allow external applications to notify Weblate that VCS repository has been updated.

GET /hooks/update/(string: project)/(string: component)/

Triggers update of a component (pulling from VCS and scanning for translation changes).

GET /hooks/update/(string: project)/

Triggers update of all components in a project (pulling from VCS and scanning for translation changes).

POST /hooks/github/

Special hook for handling GitHub notifications and automatically updating matching components.

Nota

GitHub includes direct support for notifying Weblate, just enable Weblate service hook in repository settings and set URL to URL of your Weblate installation.

Ver también

Automatically receiving changes from GitHub
For instruction on setting up GitHub integration
https://help.github.com/articles/creating-webhooks
Generic information about GitHub Webhooks
ENABLE_HOOKS
For enabling hooks for whole Weblate
POST /hooks/gitlab/

Special hook for handling GitLab notifications and automatically updating matching components.

Ver también

Automatically receiving changes from GitLab
For instruction on setting up GitLab integration
http://doc.gitlab.com/ce/web_hooks/web_hooks.html
Generic information about GitLab Webhooks
ENABLE_HOOKS
For enabling hooks for whole Weblate
POST /hooks/bitbucket/

Special hook for handling Bitbucket notifications and automatically updating matching components.

Ver también

Automatically receiving changes from Bitbucket
For instruction on setting up Bitbucket integration
https://confluence.atlassian.com/bitbucket/manage-webhooks-735643732.html
Generic information about Bitbucket Webhooks
ENABLE_HOOKS
For enabling hooks for whole Weblate

Exports

Weblate provides various exports to allow you further process the data.

GET /exports/stats/(string: project)/(string: component)/
Query Parameters:
 
  • indent (integer) – pretty printed indentation
  • jsonp (string) – JSONP callback function to wrap the data

Retrieves statistics for given component in JSON format. Optionally as JSONP when you specify the callback in the jsonp parameter.

You can get pretty-printed output by appending ?indent=1 to the request.

Example request:

GET /exports/stats/weblate/master/?indent=4 HTTP/1.1
Host: example.com
Accept: application/json, text/javascript

Example response:

HTTP/1.1 200 OK
Vary: Accept
Content-Type: application/json

[
    {
        "code": "cs",
        "failing": 0,
        "failing_percent": 0.0,
        "fuzzy": 0,
        "fuzzy_percent": 0.0,
        "last_author": "Michal \u010ciha\u0159",
        "last_change": "2012-03-28T15:07:38+00:00",
        "name": "Czech",
        "total": 436,
        "total_words": 15271,
        "translated": 436,
        "translated_percent": 100.0,
        "translated_words": 3201,
        "url": "http://hosted.weblate.org/engage/weblate/cs/",
        "url_translate": "http://hosted.weblate.org/projects/weblate/master/cs/"
    },
    {
        "code": "nl",
        "failing": 21,
        "failing_percent": 4.8,
        "fuzzy": 11,
        "fuzzy_percent": 2.5,
        "last_author": null,
        "last_change": null,
        "name": "Dutch",
        "total": 436,
        "total_words": 15271,
        "translated": 319,
        "translated_percent": 73.2,
        "translated_words": 3201,
        "url": "http://hosted.weblate.org/engage/weblate/nl/",
        "url_translate": "http://hosted.weblate.org/projects/weblate/master/nl/"
    },
    {
        "code": "el",
        "failing": 11,
        "failing_percent": 2.5,
        "fuzzy": 21,
        "fuzzy_percent": 4.8,
        "last_author": null,
        "last_change": null,
        "name": "Greek",
        "total": 436,
        "total_words": 15271,
        "translated": 312,
        "translated_percent": 71.6,
        "translated_words": 3201,
        "url": "http://hosted.weblate.org/engage/weblate/el/",
        "url_translate": "http://hosted.weblate.org/projects/weblate/master/el/"
    },
]

Included data:

code
language code
failing, failing_percent
number and percentage of failing checks
fuzzy, fuzzy_percent
number and percentage of fuzzy strings
total_words
total number of words
translated_words
number of translated words
last_author
name of last author
last_change
date of last change
name
language name
total
total number of strings
translated, translated_percent
number and percentage of translated strings
url
URL to access the translation (engagement URL)
url_translate
URL to access the translation (real translation URL)

RSS feeds

Changes in translations are exported in RSS feeds.

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.