Translation components API.

See the Weblate's Web API documentation for detailed description of the API.

GET /api/components/mobilizon/android-app/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, DELETE, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "name": "Android App",
    "slug": "android-app",
    "id": 74,
    "source_language": {
        "id": 76,
        "code": "en",
        "name": "English",
        "plural": {
            "id": 76,
            "source": 0,
            "number": 2,
            "formula": "n != 1",
            "type": 1
        },
        "aliases": [
            "en_en",
            "base",
            "source",
            "enp",
            "eng"
        ],
        "direction": "ltr",
        "population": 1636485517,
        "web_url": "https://weblate.framasoft.org/languages/en/",
        "url": "https://weblate.framasoft.org/api/languages/en/?format=api",
        "statistics_url": "https://weblate.framasoft.org/api/languages/en/statistics/?format=api"
    },
    "project": {
        "name": "Mobilizon",
        "slug": "mobilizon",
        "id": 2,
        "web": "https://joinmobilizon.org/",
        "web_url": "https://weblate.framasoft.org/projects/mobilizon/",
        "url": "https://weblate.framasoft.org/api/projects/mobilizon/?format=api",
        "components_list_url": "https://weblate.framasoft.org/api/projects/mobilizon/components/?format=api",
        "repository_url": "https://weblate.framasoft.org/api/projects/mobilizon/repository/?format=api",
        "statistics_url": "https://weblate.framasoft.org/api/projects/mobilizon/statistics/?format=api",
        "categories_url": "https://weblate.framasoft.org/api/projects/mobilizon/categories/?format=api",
        "changes_list_url": "https://weblate.framasoft.org/api/projects/mobilizon/changes/?format=api",
        "languages_url": "https://weblate.framasoft.org/api/projects/mobilizon/languages/?format=api",
        "labels_url": "https://weblate.framasoft.org/api/projects/mobilizon/labels/?format=api",
        "translation_review": true,
        "source_review": false,
        "set_language_team": true,
        "instructions": "### Guidelines\r\n\r\n* When in doubt, use the suggestion feature instead of changing the translation directly\r\n* Post a comment to discuss about translations\r\n* Feel free to ask clarification and context on a string\r\n\r\n### Components\r\n\r\nMobilizon has several modules that need to be translated:\r\n\r\n* Frontend: mostly what you see in the web app in your browser\r\n* Activity: every group activity log, that can be sent in emails\r\n* Backend errors: errors returned by the backend (for instance if the event lacks a title)\r\n* Backend: the rest of emails, server-side default configuration, push notifications, …\r\n* Search index: the global search engine\r\n\r\nThe Android app and Android app metadata components are not maintained.\r\n\r\n### Formating\r\n\r\nFrontend (frontend + search index components) and backend (everything else) parts use different formats to hold translations so you may encounter different ways to format strings when translating:\r\n\r\n* Frontend uses the [Vue-I18N](https://vue-i18n.intlify.dev/) library\r\n  * Formatting is based on the ICU Message Format syntax, with placeholders like this: `{interpolation}`. **You must never translate what's between the brackets**.\r\n  * It handles pluralization manually by separating versions with pipes : https://vue-i18n.intlify.dev/guide/essentials/pluralization.html\r\n  * Pluralization rules are included for the majority of languages but some may need to be added manually ([example for Scottish Gaelic](https://framagit.org/framasoft/mobilizon/-/blob/main/js/src/i18n/pluralRules/gd.ts)).\r\n  * Special characters sometimes have to be escaped. For instance: `{'@'}{username}` would give, after interpolation : `@thomas`. See https://vue-i18n.intlify.dev/guide/essentials/syntax.html#special-characters\r\n\r\n* Backend uses the classic Gettext library and Weblate should support this format much better\r\n  * Placeholders look like this: `This is user %{username}`.",
        "enable_hooks": true,
        "language_aliases": ""
    },
    "vcs": "gitlab",
    "repo": "https://framagit.org/tom79/mobilizon-android-app",
    "git_export": "https://weblate.framasoft.org/git/mobilizon/android-app/",
    "branch": "master",
    "push_branch": "",
    "filemask": "app/src/main/res/values-*/strings.xml",
    "screenshot_filemask": "",
    "template": "app/src/main/res/values/strings.xml",
    "edit_template": true,
    "intermediate": "",
    "new_base": "",
    "file_format": "aresource",
    "license": "GPL-3.0-only",
    "license_url": "https://spdx.org/licenses/GPL-3.0-only.html",
    "agreement": "",
    "web_url": "https://weblate.framasoft.org/projects/mobilizon/android-app/",
    "url": "https://weblate.framasoft.org/api/components/mobilizon/android-app/?format=api",
    "repository_url": "https://weblate.framasoft.org/api/components/mobilizon/android-app/repository/?format=api",
    "translations_url": "https://weblate.framasoft.org/api/components/mobilizon/android-app/translations/?format=api",
    "statistics_url": "https://weblate.framasoft.org/api/components/mobilizon/android-app/statistics/?format=api",
    "lock_url": "https://weblate.framasoft.org/api/components/mobilizon/android-app/lock/?format=api",
    "links_url": "https://weblate.framasoft.org/api/components/mobilizon/android-app/links/?format=api",
    "changes_list_url": "https://weblate.framasoft.org/api/components/mobilizon/android-app/changes/?format=api",
    "task_url": null,
    "new_lang": "add",
    "language_code_style": "",
    "push": "git@framagit.org:tom79/mobilizon-android-app.git",
    "check_flags": "",
    "priority": 100,
    "enforced_checks": [],
    "restricted": false,
    "repoweb": "",
    "report_source_bugs": "",
    "merge_style": "rebase",
    "commit_message": "Translated using Weblate ({{ language_name }})\r\n\r\nCurrently translated at {{ stats.translated_percent }}% ({{ stats.translated }} of {{ stats.all }} strings)\r\n\r\nTranslation: {{ project_name }}/{{ component_name }}\r\nTranslate-URL: {{ url }}",
    "add_message": "Added translation using Weblate ({{ language_name }})",
    "delete_message": "Deleted translation using Weblate ({{ language_name }})",
    "merge_message": "Merge branch '{{ component_remote_branch }}' into Weblate.",
    "addon_message": "Update translation files\r\n\r\nUpdated by \"{{ addon_name }}\" hook in Weblate.\r\n\r\nTranslation: {{ project_name }}/{{ component_name }}\r\nTranslate-URL: {{ url }}",
    "pull_message": "Translations update from {{ site_title }}\n\nTranslations update from [{{ site_title }}]({{ site_url }}) for [{{ project_name }}/{{ component_name }}]({{url}}).\n\n{% if component_linked_childs %}\nIt also includes following components:\n{% for linked in component_linked_childs %}\n* [{{ linked.project_name }}/{{ linked.name }}]({{ linked.url }})\n{% endfor %}\n{% endif %}\n\nCurrent translation status:\n\n![Weblate translation status]({{widget_url}})\n",
    "allow_translation_propagation": true,
    "manage_units": true,
    "enable_suggestions": true,
    "suggestion_voting": false,
    "suggestion_autoaccept": 0,
    "push_on_commit": true,
    "commit_pending_age": 24,
    "auto_lock_error": true,
    "language_regex": "^[^.]+$",
    "variant_regex": "",
    "addons": [],
    "is_glossary": false,
    "glossary_color": "silver",
    "category": null,
    "linked_component": null
}