openapi: 3.1.1 info: title: Weblate's REST addons statistics API version: '' x-logo: url: /static/weblate.svg description: "\nThe API is accessible on the ``/api/`` URL and it is based on [Django REST framework](https://www.django-rest-framework.org/).\n\nThe OpenAPI specification is available as feature preview, feedback welcome!\n\n## Authorization\n\n\n\n\n " license: name: GNU General Public License v3 or later url: https://docs.weblate.org/en/latest/contributing/license.html servers: - url: 'http:' description: Weblate tags: - name: statistics description: Many endpoints support displaying statistics for their objects. paths: /api/categories/{id}/statistics/: get: operationId: api_categories_statistics_retrieve description: Return statistics for a category. parameters: - in: path name: id schema: type: string pattern: ^[^/]+$ required: true tags: - statistics security: - tokenAuth: [] - bearerAuth: [] - cookieAuth: [] - {} responses: '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse400' description: '' '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse401' examples: AuthenticationFailed: value: type: client_error errors: - code: authentication_failed detail: Incorrect authentication credentials. attr: null NotAuthenticated: value: type: client_error errors: - code: not_authenticated detail: Authentication credentials were not provided. attr: null description: '' '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse403' examples: PermissionDenied: value: type: client_error errors: - code: permission_denied detail: You do not have permission to perform this action. attr: null description: '' '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse404' examples: NotFound: value: type: client_error errors: - code: not_found detail: Not found. attr: null description: '' '405': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse405' examples: MethodNotAllowed: value: type: client_error errors: - code: method_not_allowed detail: Method "get" not allowed. attr: null description: '' '406': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse406' examples: NotAcceptable: value: type: client_error errors: - code: not_acceptable detail: Could not satisfy the request Accept header. attr: null description: '' '423': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse423' description: '' '429': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse429' examples: Throttled: value: type: client_error errors: - code: throttled detail: Request was throttled. attr: null description: '' '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse500' examples: APIException: value: type: server_error errors: - code: error detail: A server error occurred. attr: null description: '' '200': content: application/json: schema: $ref: '#/components/schemas/Statistics' description: '' headers: X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' /api/components/{project__slug}/{slug}/statistics/: get: operationId: api_components_statistics_list description: Return paginated statistics for all translations within component. parameters: - name: page required: false in: query description: A page number within the paginated result set. schema: type: integer - name: page_size required: false in: query description: Number of results to return per page. schema: type: integer - in: path name: project__slug schema: type: string pattern: ^[^/]+$ required: true - in: path name: slug schema: type: string pattern: ^[^/]+$ required: true tags: - statistics security: - tokenAuth: [] - bearerAuth: [] - cookieAuth: [] - {} responses: '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse400' description: '' '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse401' examples: AuthenticationFailed: value: type: client_error errors: - code: authentication_failed detail: Incorrect authentication credentials. attr: null NotAuthenticated: value: type: client_error errors: - code: not_authenticated detail: Authentication credentials were not provided. attr: null description: '' '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse403' examples: PermissionDenied: value: type: client_error errors: - code: permission_denied detail: You do not have permission to perform this action. attr: null description: '' '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse404' examples: NotFound: value: type: client_error errors: - code: not_found detail: Not found. attr: null description: '' '405': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse405' examples: MethodNotAllowed: value: type: client_error errors: - code: method_not_allowed detail: Method "get" not allowed. attr: null description: '' '406': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse406' examples: NotAcceptable: value: type: client_error errors: - code: not_acceptable detail: Could not satisfy the request Accept header. attr: null description: '' '423': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse423' description: '' '429': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse429' examples: Throttled: value: type: client_error errors: - code: throttled detail: Request was throttled. attr: null description: '' '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse500' examples: APIException: value: type: server_error errors: - code: error detail: A server error occurred. attr: null description: '' '200': content: application/json: schema: $ref: '#/components/schemas/PaginatedStatisticsList' description: '' headers: X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' /api/languages/{code}/statistics/: get: operationId: api_languages_statistics_retrieve description: Return statistics for a language. parameters: - in: path name: code schema: type: string pattern: ^[^/]+$ required: true tags: - statistics security: - tokenAuth: [] - bearerAuth: [] - cookieAuth: [] - {} responses: '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse400' description: '' '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse401' examples: AuthenticationFailed: value: type: client_error errors: - code: authentication_failed detail: Incorrect authentication credentials. attr: null NotAuthenticated: value: type: client_error errors: - code: not_authenticated detail: Authentication credentials were not provided. attr: null description: '' '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse403' examples: PermissionDenied: value: type: client_error errors: - code: permission_denied detail: You do not have permission to perform this action. attr: null description: '' '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse404' examples: NotFound: value: type: client_error errors: - code: not_found detail: Not found. attr: null description: '' '405': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse405' examples: MethodNotAllowed: value: type: client_error errors: - code: method_not_allowed detail: Method "get" not allowed. attr: null description: '' '406': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse406' examples: NotAcceptable: value: type: client_error errors: - code: not_acceptable detail: Could not satisfy the request Accept header. attr: null description: '' '423': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse423' description: '' '429': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse429' examples: Throttled: value: type: client_error errors: - code: throttled detail: Request was throttled. attr: null description: '' '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse500' examples: APIException: value: type: server_error errors: - code: error detail: A server error occurred. attr: null description: '' '200': content: application/json: schema: $ref: '#/components/schemas/Statistics' description: '' headers: X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' /api/projects/{slug}/languages/: get: operationId: api_projects_languages_list description: Return statistics for all languages within a project. parameters: - in: path name: slug schema: type: string pattern: ^[^/]+$ required: true tags: - statistics security: - tokenAuth: [] - bearerAuth: [] - cookieAuth: [] - {} responses: '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse400' description: '' '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse401' examples: AuthenticationFailed: value: type: client_error errors: - code: authentication_failed detail: Incorrect authentication credentials. attr: null NotAuthenticated: value: type: client_error errors: - code: not_authenticated detail: Authentication credentials were not provided. attr: null description: '' '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse403' examples: PermissionDenied: value: type: client_error errors: - code: permission_denied detail: You do not have permission to perform this action. attr: null description: '' '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse404' examples: NotFound: value: type: client_error errors: - code: not_found detail: Not found. attr: null description: '' '405': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse405' examples: MethodNotAllowed: value: type: client_error errors: - code: method_not_allowed detail: Method "get" not allowed. attr: null description: '' '406': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse406' examples: NotAcceptable: value: type: client_error errors: - code: not_acceptable detail: Could not satisfy the request Accept header. attr: null description: '' '423': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse423' description: '' '429': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse429' examples: Throttled: value: type: client_error errors: - code: throttled detail: Request was throttled. attr: null description: '' '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse500' examples: APIException: value: type: server_error errors: - code: error detail: A server error occurred. attr: null description: '' '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Statistics' description: '' headers: X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' /api/projects/{slug}/statistics/: get: operationId: api_projects_statistics_retrieve description: Return statistics for a project. parameters: - in: path name: slug schema: type: string pattern: ^[^/]+$ required: true tags: - statistics security: - tokenAuth: [] - bearerAuth: [] - cookieAuth: [] - {} responses: '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse400' description: '' '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse401' examples: AuthenticationFailed: value: type: client_error errors: - code: authentication_failed detail: Incorrect authentication credentials. attr: null NotAuthenticated: value: type: client_error errors: - code: not_authenticated detail: Authentication credentials were not provided. attr: null description: '' '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse403' examples: PermissionDenied: value: type: client_error errors: - code: permission_denied detail: You do not have permission to perform this action. attr: null description: '' '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse404' examples: NotFound: value: type: client_error errors: - code: not_found detail: Not found. attr: null description: '' '405': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse405' examples: MethodNotAllowed: value: type: client_error errors: - code: method_not_allowed detail: Method "get" not allowed. attr: null description: '' '406': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse406' examples: NotAcceptable: value: type: client_error errors: - code: not_acceptable detail: Could not satisfy the request Accept header. attr: null description: '' '423': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse423' description: '' '429': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse429' examples: Throttled: value: type: client_error errors: - code: throttled detail: Request was throttled. attr: null description: '' '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse500' examples: APIException: value: type: server_error errors: - code: error detail: A server error occurred. attr: null description: '' '200': content: application/json: schema: $ref: '#/components/schemas/Statistics' description: '' headers: X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' /api/translations/{component__project__slug}/{component__slug}/{language__code}/statistics/: get: operationId: api_translations_statistics_retrieve description: Return detailed translation statistics. parameters: - in: path name: component__project__slug schema: type: string pattern: ^[^/]+$ required: true - in: path name: component__slug schema: type: string pattern: ^[^/]+$ required: true - in: path name: language__code schema: type: string pattern: ^[^/]+$ required: true tags: - statistics security: - tokenAuth: [] - bearerAuth: [] - cookieAuth: [] - {} responses: '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse400' description: '' '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse401' examples: AuthenticationFailed: value: type: client_error errors: - code: authentication_failed detail: Incorrect authentication credentials. attr: null NotAuthenticated: value: type: client_error errors: - code: not_authenticated detail: Authentication credentials were not provided. attr: null description: '' '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse403' examples: PermissionDenied: value: type: client_error errors: - code: permission_denied detail: You do not have permission to perform this action. attr: null description: '' '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse404' examples: NotFound: value: type: client_error errors: - code: not_found detail: Not found. attr: null description: '' '405': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse405' examples: MethodNotAllowed: value: type: client_error errors: - code: method_not_allowed detail: Method "get" not allowed. attr: null description: '' '406': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse406' examples: NotAcceptable: value: type: client_error errors: - code: not_acceptable detail: Could not satisfy the request Accept header. attr: null description: '' '423': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse423' description: '' '429': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse429' examples: Throttled: value: type: client_error errors: - code: throttled detail: Request was throttled. attr: null description: '' '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse500' examples: APIException: value: type: server_error errors: - code: error detail: A server error occurred. attr: null description: '' '200': content: application/json: schema: $ref: '#/components/schemas/Statistics' description: '' headers: X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' /api/users/{username}/statistics/: get: operationId: api_users_statistics_retrieve description: List statistics of a user. parameters: - in: path name: username schema: type: string pattern: ^[^/]+$ required: true tags: - statistics security: - tokenAuth: [] - bearerAuth: [] - cookieAuth: [] - {} responses: '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse400' description: '' '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse401' examples: AuthenticationFailed: value: type: client_error errors: - code: authentication_failed detail: Incorrect authentication credentials. attr: null NotAuthenticated: value: type: client_error errors: - code: not_authenticated detail: Authentication credentials were not provided. attr: null description: '' '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse403' examples: PermissionDenied: value: type: client_error errors: - code: permission_denied detail: You do not have permission to perform this action. attr: null description: '' '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse404' examples: NotFound: value: type: client_error errors: - code: not_found detail: Not found. attr: null description: '' '405': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse405' examples: MethodNotAllowed: value: type: client_error errors: - code: method_not_allowed detail: Method "get" not allowed. attr: null description: '' '406': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse406' examples: NotAcceptable: value: type: client_error errors: - code: not_acceptable detail: Could not satisfy the request Accept header. attr: null description: '' '423': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse423' description: '' '429': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse429' examples: Throttled: value: type: client_error errors: - code: throttled detail: Request was throttled. attr: null description: '' '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse500' examples: APIException: value: type: server_error errors: - code: error detail: A server error occurred. attr: null description: '' '200': content: application/json: schema: $ref: '#/components/schemas/UserStatistics' description: '' headers: X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' components: headers: X-RateLimit-Limit: schema: type: integer description: Allowed number of requests to perform required: true X-RateLimit-Remaining: schema: type: integer description: Remaining number of requests to perform required: true X-RateLimit-Reset: schema: type: integer description: Number of seconds until the rate-limit window resets required: true schemas: ErrorCode406Enum: enum: - not_acceptable type: string description: '* `not_acceptable` - Not Acceptable' Error423: type: object properties: code: $ref: '#/components/schemas/ErrorCode423Enum' detail: type: string attr: type: - string - 'null' required: - attr - code - detail PaginatedStatisticsList: type: object required: - count - results properties: count: type: integer example: 123 next: type: string format: uri example: http://api.example.org/accounts/?page=4 previous: type: string format: uri example: http://api.example.org/accounts/?page=2 results: type: array items: $ref: '#/components/schemas/Statistics' ErrorResponse403: type: object properties: type: $ref: '#/components/schemas/ClientErrorEnum' errors: type: array items: $ref: '#/components/schemas/Error403' required: - errors - type ErrorResponse404: type: object properties: type: $ref: '#/components/schemas/ClientErrorEnum' errors: type: array items: $ref: '#/components/schemas/Error404' required: - errors - type ErrorCode429Enum: enum: - throttled type: string description: '* `throttled` - Throttled' ErrorCode401Enum: enum: - authentication_failed - not_authenticated type: string description: '* `authentication_failed` - Authentication Failed * `not_authenticated` - Not Authenticated' Statistics: type: object properties: total: type: integer total_words: type: integer total_chars: type: integer last_change: type: - string - 'null' format: date-time recent_changes: type: integer translated: type: integer translated_words: type: integer translated_percent: type: number format: double translated_words_percent: type: number format: double translated_chars: type: integer translated_chars_percent: type: number format: double fuzzy: type: integer fuzzy_percent: type: number format: double fuzzy_words: type: integer fuzzy_words_percent: type: number format: double fuzzy_chars: type: integer fuzzy_chars_percent: type: number format: double failing: type: integer failing_percent: type: number format: double approved: type: integer approved_percent: type: number format: double approved_words: type: integer approved_words_percent: type: number format: double approved_chars: type: integer approved_chars_percent: type: number format: double readonly: type: integer readonly_percent: type: number format: double readonly_words: type: integer readonly_words_percent: type: number format: double readonly_chars: type: integer readonly_chars_percent: type: number format: double suggestions: type: integer comments: type: integer code: type: string name: type: string url: type: string format: uri translate_url: type: string format: uri required: - approved - approved_chars - approved_chars_percent - approved_percent - approved_words - approved_words_percent - comments - failing - failing_percent - fuzzy - fuzzy_chars - fuzzy_chars_percent - fuzzy_percent - fuzzy_words - fuzzy_words_percent - last_change - readonly - readonly_chars - readonly_chars_percent - readonly_percent - readonly_words - readonly_words_percent - recent_changes - suggestions - total - total_chars - total_words - translated - translated_chars - translated_chars_percent - translated_percent - translated_words - translated_words_percent ErrorCode403Enum: enum: - permission_denied type: string description: '* `permission_denied` - Permission Denied' Error429: type: object properties: code: $ref: '#/components/schemas/ErrorCode429Enum' detail: type: string attr: type: - string - 'null' required: - attr - code - detail UserStatistics: type: object properties: translated: type: integer suggested: type: integer uploaded: type: integer commented: type: integer languages: type: integer required: - commented - languages - suggested - translated - uploaded Error406: type: object properties: code: $ref: '#/components/schemas/ErrorCode406Enum' detail: type: string attr: type: - string - 'null' required: - attr - code - detail Error405: type: object properties: code: $ref: '#/components/schemas/ErrorCode405Enum' detail: type: string attr: type: - string - 'null' required: - attr - code - detail Error400: type: object properties: code: type: string description: Error code. The examples list common validation and parse error codes. examples: - blank - date - datetime - does_not_exist - empty - incorrect_match - incorrect_type - invalid - invalid_choice - invalid_image - invalid_list - make_aware - max_length - max_string_length - max_value - min_value - no_match - no_name - not_a_list - 'null' - null_characters_not_allowed - overflow - parse_error - required - surrogate_characters_not_allowed - unique detail: type: string attr: type: - string - 'null' required: - attr - code - detail Error401: type: object properties: code: $ref: '#/components/schemas/ErrorCode401Enum' detail: type: string attr: type: - string - 'null' required: - attr - code - detail ErrorResponse400TypeEnum: enum: - validation_error - client_error type: string description: '* `validation_error` - Validation Error * `client_error` - Client Error' Error500: type: object properties: code: $ref: '#/components/schemas/ErrorCode500Enum' detail: type: string attr: type: - string - 'null' required: - attr - code - detail ErrorCode500Enum: enum: - error type: string description: '* `error` - Error' ServerErrorEnum: enum: - server_error type: string description: '* `server_error` - Server Error' Error404: type: object properties: code: $ref: '#/components/schemas/ErrorCode404Enum' detail: type: string attr: type: - string - 'null' required: - attr - code - detail ErrorCode404Enum: enum: - not_found type: string description: '* `not_found` - Not Found' ErrorResponse500: type: object properties: type: $ref: '#/components/schemas/ServerErrorEnum' errors: type: array items: $ref: '#/components/schemas/Error500' required: - errors - type ErrorResponse423: type: object properties: type: $ref: '#/components/schemas/ServerErrorEnum' errors: type: array items: $ref: '#/components/schemas/Error423' required: - errors - type Error403: type: object properties: code: $ref: '#/components/schemas/ErrorCode403Enum' detail: type: string attr: type: - string - 'null' required: - attr - code - detail ErrorResponse401: type: object properties: type: $ref: '#/components/schemas/ClientErrorEnum' errors: type: array items: $ref: '#/components/schemas/Error401' required: - errors - type ErrorResponse429: type: object properties: type: $ref: '#/components/schemas/ClientErrorEnum' errors: type: array items: $ref: '#/components/schemas/Error429' required: - errors - type ErrorCode423Enum: enum: - repository-locked - component-locked - unknown-locked type: string description: '* `repository-locked` - Repository Locked * `component-locked` - Component Locked * `unknown-locked` - Unknown Locked' ErrorResponse400: type: object properties: type: $ref: '#/components/schemas/ErrorResponse400TypeEnum' errors: type: array items: $ref: '#/components/schemas/Error400' required: - errors - type ErrorResponse406: type: object properties: type: $ref: '#/components/schemas/ClientErrorEnum' errors: type: array items: $ref: '#/components/schemas/Error406' required: - errors - type ErrorResponse405: type: object properties: type: $ref: '#/components/schemas/ClientErrorEnum' errors: type: array items: $ref: '#/components/schemas/Error405' required: - errors - type ErrorCode405Enum: enum: - method_not_allowed type: string description: '* `method_not_allowed` - Method Not Allowed' ClientErrorEnum: enum: - client_error type: string description: '* `client_error` - Client Error' securitySchemes: bearerAuth: type: apiKey in: header name: Bearer description: "Token-based authentication with required prefix `Bearer`.\n\n- Each user has a personal access token which they can get from their respective user profile. These tokens have the `wlu_` prefix.\n- It is possible to create project tokens whose access to the API is limited to operations to their associated project. These tokens have the `wlp_` prefix.\n " cookieAuth: type: apiKey in: cookie name: sessionid description: Session-based authentication used when user is signed in. tokenAuth: type: apiKey in: header name: Token description: "Token-based authentication with required prefix `Token`.\n\n- Each user has a personal access token which they can get from their respective user profile. These tokens have the `wlu_` prefix.\n- It is possible to create project tokens whose access to the API is limited to operations to their associated project. These tokens have the `wlp_` prefix.\n " externalDocs: url: https://docs.weblate.org/en/latest/index.html description: Official Weblate documentation