openapi: 3.1.1 info: title: Weblate's REST addons users 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: users description: Added in version 4.0. paths: /api/users/: get: operationId: api_users_list description: 'List of users if you have permissions to see manage users. Without a permission you get to see only your own details.' parameters: - in: query name: id schema: type: integer - in: query name: is_active schema: type: boolean - 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: query name: username schema: type: string tags: - users 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/PaginatedFullUserList' 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' post: operationId: api_users_create description: Create a new user. tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/FullUser' required: true 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: '' '415': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse415' examples: UnsupportedMediaType: value: type: client_error errors: - code: unsupported_media_type detail: Unsupported media type "application/json" in request. 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: '' '201': content: application/json: schema: $ref: '#/components/schemas/FullUser' description: '' /api/users/{username}/: get: operationId: api_users_retrieve description: Return information about users. parameters: - in: path name: username schema: type: string pattern: ^[^/]+$ required: true tags: - users 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/FullUser' 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' put: operationId: api_users_update description: Change the user parameters. parameters: - in: path name: username schema: type: string pattern: ^[^/]+$ required: true tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/FullUser' required: true 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: '' '415': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse415' examples: UnsupportedMediaType: value: type: client_error errors: - code: unsupported_media_type detail: Unsupported media type "application/json" in request. 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/FullUser' 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' patch: operationId: api_users_partial_update description: Change the user parameters. parameters: - in: path name: username schema: type: string pattern: ^[^/]+$ required: true tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedFullUser' 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: '' '415': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse415' examples: UnsupportedMediaType: value: type: client_error errors: - code: unsupported_media_type detail: Unsupported media type "application/json" in request. 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/FullUser' 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' delete: operationId: api_users_destroy description: Delete all user information and mark the user inactive. parameters: - in: path name: username schema: type: string pattern: ^[^/]+$ required: true tags: - users 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: '' '204': description: No response body /api/users/{username}/contributions/: get: operationId: api_users_contributions_list description: List translation contributions of a user. parameters: - in: query name: id schema: type: integer - in: query name: is_active schema: type: boolean - 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: username schema: type: string pattern: ^[^/]+$ required: true - in: query name: username schema: type: string tags: - users 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/PaginatedTranslationList' 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}/groups/: post: operationId: api_users_groups_create description: Associate groups with a user. parameters: - in: path name: username schema: type: string pattern: ^[^/]+$ required: true tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/UserGroupRequest' required: true 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: '' '415': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse415' examples: UnsupportedMediaType: value: type: client_error errors: - code: unsupported_media_type detail: Unsupported media type "application/json" in request. 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/FullUser' 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' delete: operationId: api_users_groups_destroy description: Remove a user from a group. parameters: - in: path name: username schema: type: string pattern: ^[^/]+$ required: true tags: - users 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: '' '415': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse415' examples: UnsupportedMediaType: value: type: client_error errors: - code: unsupported_media_type detail: Unsupported media type "application/json" in request. 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: '' '204': description: No response body requestBody: content: application/json: schema: $ref: '#/components/schemas/UserGroupDeleteRequest' required: true /api/users/{username}/notifications/: get: operationId: api_users_notifications_list description: List subscriptions of a user. parameters: - in: query name: id schema: type: integer - in: query name: is_active schema: type: boolean - 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: username schema: type: string pattern: ^[^/]+$ required: true - in: query name: username schema: type: string tags: - users 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/PaginatedNotificationList' 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' post: operationId: api_users_notifications_create description: Associate subscriptions with a user. parameters: - in: query name: id schema: type: integer - in: query name: is_active schema: type: boolean - 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: username schema: type: string pattern: ^[^/]+$ required: true - in: query name: username schema: type: string tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/Notification' required: true 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: '' '415': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse415' examples: UnsupportedMediaType: value: type: client_error errors: - code: unsupported_media_type detail: Unsupported media type "application/json" in request. 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/PaginatedNotificationList' 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}/notifications/{subscription_id}/: get: operationId: api_users_notifications_retrieve description: Get a subscription associated with a user. parameters: - in: path name: subscription_id schema: type: integer required: true - in: path name: username schema: type: string pattern: ^[^/]+$ required: true tags: - users 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/Notification' 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' put: operationId: api_users_notifications_update description: Edit a subscription associated with a user. parameters: - in: path name: subscription_id schema: type: integer required: true - in: path name: username schema: type: string pattern: ^[^/]+$ required: true tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/Notification' required: true 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: '' '415': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse415' examples: UnsupportedMediaType: value: type: client_error errors: - code: unsupported_media_type detail: Unsupported media type "application/json" in request. 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/Notification' 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' patch: operationId: api_users_notifications_partial_update description: Edit a subscription associated with a user. parameters: - in: path name: subscription_id schema: type: integer required: true - in: path name: username schema: type: string pattern: ^[^/]+$ required: true tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedNotification' 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: '' '415': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse415' examples: UnsupportedMediaType: value: type: client_error errors: - code: unsupported_media_type detail: Unsupported media type "application/json" in request. 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/Notification' 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' delete: operationId: api_users_notifications_destroy description: Delete a subscription associated with a user. parameters: - in: path name: subscription_id schema: type: integer required: true - in: path name: username schema: type: string pattern: ^[^/]+$ required: true tags: - users 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: '' '204': description: No response body /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: - users 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: schemas: Error415: type: object properties: code: $ref: '#/components/schemas/ErrorCode415Enum' detail: type: string attr: type: - string - 'null' required: - attr - code - detail UserGroupDeleteRequest: type: object properties: group_id: type: integer required: - group_id ErrorCode406Enum: enum: - not_acceptable type: string description: '* `not_acceptable` - Not Acceptable' Translation: type: object properties: language: allOf: - $ref: '#/components/schemas/Language' readOnly: true component: allOf: - $ref: '#/components/schemas/Component' readOnly: true language_code: type: string maxLength: 50 id: type: integer readOnly: true filename: type: string maxLength: 400 revision: type: string maxLength: 200 web_url: type: string readOnly: true share_url: type: string readOnly: true translate_url: type: string readOnly: true url: type: string format: uri readOnly: true is_template: type: boolean readOnly: true is_source: type: boolean readOnly: true total: type: integer readOnly: true total_words: type: integer readOnly: true translated: type: integer readOnly: true translated_words: type: integer readOnly: true translated_percent: type: number format: double readOnly: true fuzzy: type: integer readOnly: true fuzzy_words: type: integer readOnly: true fuzzy_percent: type: number format: double readOnly: true failing_checks: type: integer readOnly: true failing_checks_words: type: integer readOnly: true failing_checks_percent: type: number format: double readOnly: true have_suggestion: type: integer readOnly: true have_comment: type: integer readOnly: true last_change: type: string format: date-time readOnly: true last_author: type: string readOnly: true repository_url: type: string format: uri readOnly: true file_url: type: string format: uri readOnly: true statistics_url: type: string format: uri readOnly: true changes_list_url: type: string format: uri readOnly: true units_list_url: type: string format: uri readOnly: true announcements_url: type: string format: uri readOnly: true required: - announcements_url - changes_list_url - component - failing_checks - failing_checks_percent - failing_checks_words - file_url - filename - fuzzy - fuzzy_percent - fuzzy_words - have_comment - have_suggestion - id - is_source - is_template - language - last_author - last_change - repository_url - share_url - statistics_url - total - total_words - translate_url - translated - translated_percent - translated_words - units_list_url - url - web_url Error423: type: object properties: code: $ref: '#/components/schemas/ErrorCode423Enum' detail: type: string attr: type: - string - 'null' required: - attr - code - detail ColorEnum: enum: - navy - blue - aqua - teal - olive - green - lime - yellow - orange - red - maroon - fuchsia - purple - black - gray - silver type: string description: '* `navy` - Navy * `blue` - Blue * `aqua` - Aqua * `teal` - Teal * `olive` - Olive * `green` - Green * `lime` - Lime * `yellow` - Yellow * `orange` - Orange * `red` - Red * `maroon` - Maroon * `fuchsia` - Fuchsia * `purple` - Purple * `black` - Black * `gray` - Gray * `silver` - Silver' 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' Notification: type: object properties: notification: $ref: '#/components/schemas/NotificationEnum' id: type: integer readOnly: true scope: allOf: - $ref: '#/components/schemas/NotificationScopeEnum' minimum: -2147483648 maximum: 2147483647 frequency: allOf: - $ref: '#/components/schemas/FrequencyEnum' minimum: -2147483648 maximum: 2147483647 project: allOf: - $ref: '#/components/schemas/Project' readOnly: true component: allOf: - $ref: '#/components/schemas/Component' readOnly: true required: - component - frequency - id - notification - project - scope Language: type: object properties: id: type: integer readOnly: true code: type: string title: Language code pattern: ^[A-Za-z0-9]+(?:[-_@][A-Za-z0-9]+)*$ maxLength: 50 name: type: string maxLength: 100 plural: $ref: '#/components/schemas/LanguagePlural' aliases: type: array items: {} readOnly: true direction: title: Text direction oneOf: - $ref: '#/components/schemas/DirectionEnum' - $ref: '#/components/schemas/BlankEnum' population: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 title: Number of speakers description: Number of people speaking this language. web_url: type: string readOnly: true url: type: string format: uri readOnly: true statistics_url: type: string format: uri readOnly: true required: - aliases - code - id - statistics_url - url - web_url SourceEnum: enum: - 0 - 1 - 3 - 4 - 5 - 6 - 2 type: integer description: '* `0` - Default plural * `1` - gettext plural formula * `3` - CLDR plural with zero * `4` - CLDR v38+ plural * `5` - Android plural * `6` - Qt Linguist plural * `2` - Manually entered formula' LanguagePlural: type: object properties: id: type: integer readOnly: true source: allOf: - $ref: '#/components/schemas/SourceEnum' title: Plural definition source minimum: -32768 maximum: 32767 number: type: integer maximum: 10 minimum: 1 title: Number of plurals formula: type: string title: Plural formula type: type: integer readOnly: true title: Plural type required: - id - type ErrorCode401Enum: enum: - authentication_failed - not_authenticated type: string description: '* `authentication_failed` - Authentication Failed * `not_authenticated` - Not Authenticated' ErrorCode403Enum: enum: - permission_denied type: string description: '* `permission_denied` - Permission Denied' ErrorResponse415: type: object properties: type: $ref: '#/components/schemas/ClientErrorEnum' errors: type: array items: $ref: '#/components/schemas/Error415' required: - errors - type DirectionEnum: enum: - ltr - rtl type: string description: '* `` - Automatically detect text direction * `ltr` - Left to right * `rtl` - Right to left' Error429: type: object properties: code: $ref: '#/components/schemas/ErrorCode429Enum' detail: type: string attr: type: - string - 'null' required: - attr - code - detail NewLangEnum: enum: - contact - url - add - none type: string description: '* `contact` - Contact maintainers * `url` - Point to translation instructions URL * `add` - Create new language file * `none` - Disable adding new translations' 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 PatchedFullUser: type: object properties: id: type: integer readOnly: true email: type: - string - 'null' title: E-mail format: email maxLength: 190 full_name: type: string maxLength: 150 username: type: string description: 'Username may only contain letters, numbers or the following characters: @ . + - _' maxLength: 150 groups: type: array items: type: string format: uri readOnly: true languages: type: array items: type: string format: uri readOnly: true notifications: type: string format: uri readOnly: true is_superuser: type: boolean title: Superuser status description: User has all possible permissions. is_active: type: boolean title: Active description: Mark user as inactive instead of removing. is_bot: type: boolean title: Robot user date_joined: type: string format: date-time readOnly: true date_expires: type: - string - 'null' format: date-time title: Expires description: The account will be disabled after the expiry. last_login: type: - string - 'null' format: date-time readOnly: true url: type: string format: uri readOnly: true statistics_url: type: string format: uri readOnly: true contributions_url: type: string format: uri readOnly: true 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 FileFormatEnum: enum: - apple-xliff - appstore - arb - aresource - asciidoc - ass - catkeys - cmp-resource - csv - csv-multi - csv-simple - dokuwiki - dtd - flatxml - fluent - formatjs - go-i18n-json - go-i18n-json-v2 - go-i18n-toml - gotext - gwt - html - i18next - i18nextv4 - idml - ini - islu - joomla - json - json-nested - laravel - markdown - mdx - mediawiki - mi18n-lang - moko-resource - nextcloud-json - odf - php - plainxliff - po - po-mono - poxliff - properties - rc - resjson - resourcedictionary - resx - ruby-yaml - srt - ssa - strings - stringsdict - sub - tbx - toml - ts - txt - webextension - wxl - xliff - xliff2 - xliff2-placeables - xlsx - xwiki-fullpage - xwiki-java-properties - xwiki-page-properties - yaml type: string description: '* `apple-xliff` - XLIFF 1.2 with Apple extensions * `appstore` - App store metadata files * `arb` - ARB file * `aresource` - Android String Resource * `asciidoc` - AsciiDoc file * `ass` - Advanced SubStation Alpha subtitle file * `catkeys` - Haiku catkeys * `cmp-resource` - Compose Multiplatform Resource * `csv` - CSV file * `csv-multi` - Multivalue CSV file * `csv-simple` - Simple CSV file * `dokuwiki` - DokuWiki text file * `dtd` - DTD file * `flatxml` - Flat XML file * `fluent` - Fluent file * `formatjs` - Format.JS JSON file * `go-i18n-json` - go-i18n v1 JSON file * `go-i18n-json-v2` - go-i18n v2 JSON file * `go-i18n-toml` - go-i18n TOML file * `gotext` - gotext JSON file * `gwt` - GWT properties * `html` - HTML file * `i18next` - i18next JSON file v3 * `i18nextv4` - i18next JSON file v4 * `idml` - IDML file * `ini` - INI file * `islu` - Inno Setup INI file * `joomla` - Joomla language file * `json` - JSON file * `json-nested` - JSON nested structure file * `laravel` - Laravel PHP strings * `markdown` - Markdown file * `mdx` - MDX file * `mediawiki` - MediaWiki text file * `mi18n-lang` - @draggable/i18n lang file * `moko-resource` - Mobile Kotlin Resource * `nextcloud-json` - Nextcloud JSON file * `odf` - OpenDocument file * `php` - PHP strings * `plainxliff` - XLIFF 1.2 translation file * `po` - gettext PO file * `po-mono` - gettext PO file (monolingual) * `poxliff` - XLIFF 1.2 with gettext extensions * `properties` - Java Properties * `rc` - RC file * `resjson` - RESJSON file * `resourcedictionary` - ResourceDictionary file * `resx` - .NET resource file * `ruby-yaml` - Ruby YAML file * `srt` - SubRip subtitle file * `ssa` - SubStation Alpha subtitle file * `strings` - iOS strings * `stringsdict` - Stringsdict file * `sub` - MicroDVD subtitle file * `tbx` - TermBase eXchange file * `toml` - TOML file * `ts` - Qt Linguist translation file * `txt` - Plain text file * `webextension` - WebExtension JSON file * `wxl` - WixLocalization file * `xliff` - XLIFF 1.2 with placeables support * `xliff2` - XLIFF 2.0 translation file * `xliff2-placeables` - XLIFF 2.0 translation file with placeables support * `xlsx` - Excel Open XML * `xwiki-fullpage` - XWiki Full Page * `xwiki-java-properties` - XWiki Java Properties * `xwiki-page-properties` - XWiki Page Properties * `yaml` - YAML file' ErrorResponse400TypeEnum: enum: - validation_error - client_error type: string description: '* `validation_error` - Validation Error * `client_error` - Client Error' NotificationScopeEnum: enum: - 0 - 10 - 20 - 30 - 40 type: integer description: '* `0` - All * `10` - Watched * `20` - Administered * `30` - Project * `40` - Component' LanguageCodeStyleEnum: enum: - posix - posix_lowercase - bcp - posix_long - posix_long_lowercase - bcp_long - bcp_legacy - bcp_lower - android - appstore - googleplay - linux - linux_lowercase type: string description: '* `` - Default based on the file format * `posix` - POSIX style using underscore as a separator * `posix_lowercase` - POSIX style using underscore as a separator, lower cased * `bcp` - BCP style using hyphen as a separator * `posix_long` - POSIX style using underscore as a separator, including country code * `posix_long_lowercase` - POSIX style using underscore as a separator, including country code, lower cased * `bcp_long` - BCP style using hyphen as a separator, including country code * `bcp_legacy` - BCP style using hyphen as a separator, legacy language codes * `bcp_lower` - BCP style using hyphen as a separator, lower cased * `android` - Android style * `appstore` - Apple App Store metadata style * `googleplay` - Google Play metadata style * `linux` - Linux style * `linux_lowercase` - Linux style, lower cased' PriorityEnum: enum: - 60 - 80 - 100 - 120 - 140 type: integer description: '* `60` - Very high * `80` - High * `100` - Medium * `120` - Low * `140` - Very low' Error500: type: object properties: code: $ref: '#/components/schemas/ErrorCode500Enum' detail: type: string attr: type: - string - 'null' required: - attr - code - detail Component: type: object properties: name: type: string title: Component name description: Display name maxLength: 100 slug: type: string title: URL slug description: Name used in URLs and filenames. maxLength: 100 pattern: ^[-a-zA-Z0-9_]+$ id: type: integer readOnly: true source_language: $ref: '#/components/schemas/Language' project: allOf: - $ref: '#/components/schemas/Project' readOnly: true vcs: allOf: - $ref: '#/components/schemas/VcsEnum' title: Version control system description: 'Version control system to use to access your repository containing translations. You can also choose additional integration with third party providers to submit pull/merge requests. * `gerrit` - Gerrit * `git` - Git * `git-force-push` - Git with force push * `local` - No remote repository * `mercurial` - Mercurial * `subversion` - Subversion' repo: type: string maxLength: 300 git_export: type: string title: Exported repository URL description: URL of repository where users can fetch changes from Weblate maxLength: 220 branch: type: string maxLength: 200 push_branch: type: string maxLength: 200 filemask: type: string title: File mask description: 'Path of files to translate relative to repository root, use * instead of language code, for example: po/*.po or locale/*/LC_MESSAGES/django.po.' maxLength: 400 screenshot_filemask: type: string title: Screenshot file mask description: 'Path of screenshots relative to repository root, for example: docs/screenshots/*.png.' maxLength: 400 template: type: string title: Monolingual base language file description: Filename of translation base file, containing all strings and their source for monolingual translations. maxLength: 400 edit_template: type: boolean title: Edit base file description: Whether users will be able to edit the base file for monolingual translations. intermediate: type: string title: Intermediate language file description: Filename of intermediate translation file. In most cases this is a translation file provided by developers and is used when creating actual source strings. maxLength: 400 new_base: type: string title: Template for new translations description: Filename of file used for creating new translations. For gettext choose .pot file. maxLength: 400 file_format: $ref: '#/components/schemas/FileFormatEnum' file_format_params: title: File format parameters license: title: Translation license type: string maxLength: 150 examples: - MIT - GPL-3.0-or-later - Apache-2.0 - BSD-3-Clause - proprietary inherit_license: type: boolean title: Inherit translation license description: Use the translation license configured in the category or project. effective_license: type: string readOnly: true license_url: type: string readOnly: true announcements_url: type: string format: uri readOnly: true agreement: type: string title: Contributor license agreement description: Contributor license agreement which needs to be approved before a user can translate this component. inherit_agreement: type: boolean title: Inherit contributor license agreement description: Use the contributor license agreement configured in the category or project. effective_agreement: type: string readOnly: true web_url: type: string readOnly: true url: type: string format: uri readOnly: true repository_url: type: string format: uri readOnly: true translations_url: type: string format: uri readOnly: true statistics_url: type: string format: uri readOnly: true lock_url: type: string format: uri readOnly: true links_url: type: string format: uri readOnly: true changes_list_url: type: string format: uri readOnly: true task_url: type: - string - 'null' format: uri readOnly: true credits_url: type: string format: uri readOnly: true new_lang: allOf: - $ref: '#/components/schemas/NewLangEnum' title: Adding new translation description: 'How to handle requests for creating new translations. * `contact` - Contact maintainers * `url` - Point to translation instructions URL * `add` - Create new language file * `none` - Disable adding new translations' inherit_new_lang: type: boolean title: Inherit adding new translations description: Use the adding new translations setting configured in the category or project. effective_new_lang: type: string readOnly: true language_code_style: description: 'Customize language code used to generate the filename for translations created by Weblate. * `` - Default based on the file format * `posix` - POSIX style using underscore as a separator * `posix_lowercase` - POSIX style using underscore as a separator, lower cased * `bcp` - BCP style using hyphen as a separator * `posix_long` - POSIX style using underscore as a separator, including country code * `posix_long_lowercase` - POSIX style using underscore as a separator, including country code, lower cased * `bcp_long` - BCP style using hyphen as a separator, including country code * `bcp_legacy` - BCP style using hyphen as a separator, legacy language codes * `bcp_lower` - BCP style using hyphen as a separator, lower cased * `android` - Android style * `appstore` - Apple App Store metadata style * `googleplay` - Google Play metadata style * `linux` - Linux style * `linux_lowercase` - Linux style, lower cased' oneOf: - $ref: '#/components/schemas/LanguageCodeStyleEnum' - $ref: '#/components/schemas/BlankEnum' inherit_language_code_style: type: boolean description: Use the language code style configured in the category or project. effective_language_code_style: type: string readOnly: true push: type: string maxLength: 300 check_flags: type: string title: Translation flags description: Additional comma-separated flags to influence Weblate behavior. effective_check_flags: type: string readOnly: true priority: allOf: - $ref: '#/components/schemas/PriorityEnum' description: 'Components with higher priority are offered first to translators. * `60` - Very high * `80` - High * `100` - Medium * `120` - Low * `140` - Very low' minimum: -2147483648 maximum: 2147483647 enforced_checks: {} restricted: type: boolean title: Restricted component description: Restrict access to the component to only those explicitly given permission. repoweb: type: string title: Repository browser description: Link to repository browser, use {{branch}} for branch, {{filename}} and {{line}} as filename and line placeholders. You might want to strip leading directory by using {{filename|parentdir}}. maxLength: 200 report_source_bugs: type: string title: Source string bug reporting address description: E-mail address for reports on errors in source strings. Leave empty for no e-mails. format: email maxLength: 190 merge_style: allOf: - $ref: '#/components/schemas/MergeStyleEnum' description: 'Define whether Weblate should merge the upstream repository or rebase changes onto it. * `merge` - Merge * `rebase` - Rebase * `merge_noff` - Merge without fast-forward' commit_message: type: string title: Commit message when translating description: You can use template language for various info, please consult the documentation for more details. inherit_commit_message: type: boolean title: Inherit commit message when translating description: Use the commit message when translating configured in the category or project. effective_commit_message: type: string readOnly: true add_message: type: string title: Commit message when adding translation description: You can use template language for various info, please consult the documentation for more details. inherit_add_message: type: boolean title: Inherit commit message when adding translation description: Use the commit message when adding translation configured in the category or project. effective_add_message: type: string readOnly: true delete_message: type: string title: Commit message when removing translation description: You can use template language for various info, please consult the documentation for more details. inherit_delete_message: type: boolean title: Inherit commit message when removing translation description: Use the commit message when removing translation configured in the category or project. effective_delete_message: type: string readOnly: true merge_message: type: string title: Commit message when merging translation description: You can use template language for various info, please consult the documentation for more details. inherit_merge_message: type: boolean title: Inherit commit message when merging translation description: Use the commit message when merging translation configured in the category or project. effective_merge_message: type: string readOnly: true addon_message: type: string title: Commit message when add-on makes a change description: You can use template language for various info, please consult the documentation for more details. inherit_addon_message: type: boolean title: Inherit commit message when add-on makes a change description: Use the commit message when add-on makes a change configured in the category or project. effective_addon_message: type: string readOnly: true pull_message: type: string title: Merge request message description: You can use template language for various info, please consult the documentation for more details. inherit_pull_message: type: boolean title: Inherit merge request message description: Use the merge request message configured in the category or project. effective_pull_message: type: string readOnly: true allow_translation_propagation: type: boolean description: Whether translation updates in other components will cause automatic translation in this one manage_units: type: boolean title: Manage strings description: Enables adding and removing strings straight from Weblate. If your strings are extracted from the source code or managed externally you probably want to keep it disabled. enable_suggestions: type: boolean title: Turn on suggestions description: Whether to allow translation suggestions at all. suggestion_voting: type: boolean description: Users can only vote for suggestions and can’t make direct translations. suggestion_autoaccept: type: integer maximum: 32767 minimum: 0 title: Automatically accept suggestions description: Automatically accept suggestions with this number of votes, use 0 to turn it off. push_on_commit: type: boolean description: Whether the repository should be pushed upstream on every commit. commit_pending_age: type: integer maximum: 2160 minimum: -32768 title: Age of changes to commit description: Time in hours after which any pending changes will be committed to the VCS. auto_lock_error: type: boolean title: Lock on error description: Whether the component should be locked on repository errors. language_regex: type: string title: Language filter description: Regular expression used to filter translation files when scanning for file mask. maxLength: 500 key_filter: type: string description: Regular expression used to filter keys. This is only available for monolingual formats. maxLength: 500 secondary_language: type: - integer - 'null' description: Additional language to show together with the source language while translating. This setting is inherited from the project if left empty. inherit_secondary_language: type: boolean description: Use the secondary language configured in the category or project. effective_secondary_language: type: - integer - 'null' readOnly: true variant_regex: type: string title: Variants regular expression description: Regular expression used to determine variants of a string. maxLength: 190 zipfile: type: string format: uri docfile: type: string format: uri from_component: oneOf: - type: integer - type: string writeOnly: true addons: type: array items: type: string format: uri readOnly: true is_glossary: type: boolean title: Use as a glossary description: Glossaries are different from regular translations but help keep track of and share consistent terminology. glossary_color: $ref: '#/components/schemas/ColorEnum' disable_autoshare: type: boolean category: type: - string - 'null' format: uri linked_component: type: string format: uri readOnly: true locked: type: boolean readOnly: true required: - addons - announcements_url - changes_list_url - credits_url - effective_add_message - effective_addon_message - effective_agreement - effective_check_flags - effective_commit_message - effective_delete_message - effective_language_code_style - effective_license - effective_merge_message - effective_new_lang - effective_pull_message - effective_secondary_language - file_format - filemask - id - license_url - linked_component - links_url - lock_url - locked - name - project - repo - repository_url - slug - statistics_url - task_url - translations_url - url - web_url NotificationEnum: enum: - RepositoryNotification - LockNotification - LicenseNotification - ParseErrorNotification - NewStringNotificaton - TranslationActivitySummaryNotification - NewContributorNotificaton - NewSuggestionNotificaton - LanguageTranslatedNotificaton - ComponentTranslatedNotificaton - NewCommentNotificaton - MentionCommentNotificaton - LastAuthorCommentNotificaton - TranslatedStringNotificaton - ApprovedStringNotificaton - ChangedStringNotificaton - NewTranslationNotificaton - NewComponentNotificaton - NewAnnouncementNotificaton - NewAlertNotificaton - MergeFailureNotification - PendingSuggestionsNotification - ToDoStringsNotification type: string description: '* `RepositoryNotification` - Operation was performed in the repository * `LockNotification` - Component was locked or unlocked * `LicenseNotification` - License was changed * `ParseErrorNotification` - Parse error occurred * `NewStringNotificaton` - String is available for translation * `TranslationActivitySummaryNotification` - Translation activity summary * `NewContributorNotificaton` - Contributor made their first translation * `NewSuggestionNotificaton` - Suggestion was added * `LanguageTranslatedNotificaton` - Language was translated * `ComponentTranslatedNotificaton` - Component was translated * `NewCommentNotificaton` - Comment was added * `MentionCommentNotificaton` - You were mentioned in a comment * `LastAuthorCommentNotificaton` - Your translation received a comment * `TranslatedStringNotificaton` - String was edited by user * `ApprovedStringNotificaton` - String was approved * `ChangedStringNotificaton` - String was changed * `NewTranslationNotificaton` - New language was added or requested * `NewComponentNotificaton` - New translation component was created * `NewAnnouncementNotificaton` - Announcement was published * `NewAlertNotificaton` - New alert emerged in a component * `MergeFailureNotification` - Repository operation failed * `PendingSuggestionsNotification` - Pending suggestions exist * `ToDoStringsNotification` - Unfinished strings exist' ErrorCode500Enum: enum: - error type: string description: '* `error` - Error' CommitPolicyEnum: enum: - 0 - 20 - 30 type: integer description: '* `0` - Commit all translations regardless of quality * `20` - Skip translations marked as needing editing * `30` - Only include approved translations' ServerErrorEnum: enum: - server_error type: string description: '* `server_error` - Server Error' ErrorCode415Enum: enum: - unsupported_media_type type: string description: '* `unsupported_media_type` - Unsupported Media Type' Error404: type: object properties: code: $ref: '#/components/schemas/ErrorCode404Enum' detail: type: string attr: type: - string - 'null' required: - attr - code - detail Project: type: object properties: name: type: string title: Project name description: Display name maxLength: 60 slug: type: string title: URL slug description: Name used in URLs and filenames. maxLength: 60 pattern: ^[-a-zA-Z0-9_]+$ id: type: integer readOnly: true web: type: string format: uri title: Project website description: Main website of translated project. maxLength: 200 web_url: type: string readOnly: true url: type: string format: uri readOnly: true check_flags: type: string title: Translation flags description: Additional comma-separated flags to influence Weblate behavior. effective_check_flags: type: string readOnly: true components_list_url: type: string format: uri readOnly: true repository_url: type: string format: uri readOnly: true statistics_url: type: string format: uri readOnly: true categories_url: type: string format: uri readOnly: true changes_list_url: type: string format: uri readOnly: true languages_url: type: string format: uri readOnly: true labels_url: type: string format: uri readOnly: true credits_url: type: string format: uri readOnly: true lock_url: type: string format: uri readOnly: true translation_review: type: boolean title: Enable reviews description: Requires dedicated reviewers to approve translations. source_review: type: boolean title: Enable source reviews description: Requires dedicated reviewers to approve source strings. commit_policy: allOf: - $ref: '#/components/schemas/CommitPolicyEnum' title: Translation quality filter description: 'Select which translations should be included when committing changes. More restrictive options will skip translations with potential quality issues. * `0` - Commit all translations regardless of quality * `20` - Skip translations marked as needing editing * `30` - Only include approved translations' minimum: -2147483648 maximum: 2147483647 workspace: type: - string - 'null' format: uuid instructions: type: string title: Translation instructions description: You can use Markdown and mention users by @username. enable_hooks: type: boolean description: Whether to allow updating this repository by remote hooks. language_aliases: type: string description: 'Comma-separated list of language code mappings, for example: en_GB:en,en_US:en' license: title: Translation license type: string maxLength: 150 examples: - MIT - GPL-3.0-or-later - Apache-2.0 - BSD-3-Clause - proprietary inherit_license: type: boolean title: Inherit translation license description: Use the translation license configured in the workspace. effective_license: type: string readOnly: true agreement: type: string title: Contributor license agreement description: Contributor license agreement which needs to be approved before a user can translate components in this project. inherit_agreement: type: boolean title: Inherit contributor license agreement description: Use the contributor license agreement configured in the workspace. effective_agreement: type: string readOnly: true new_lang: allOf: - $ref: '#/components/schemas/NewLangEnum' title: Adding new translation description: 'How to handle requests for creating new translations. * `contact` - Contact maintainers * `url` - Point to translation instructions URL * `add` - Create new language file * `none` - Disable adding new translations' inherit_new_lang: type: boolean title: Inherit adding new translations description: Use the adding new translations setting configured in the workspace. effective_new_lang: type: string readOnly: true language_code_style: description: 'Customize language code used to generate the filename for translations created by Weblate. * `` - Default based on the file format * `posix` - POSIX style using underscore as a separator * `posix_lowercase` - POSIX style using underscore as a separator, lower cased * `bcp` - BCP style using hyphen as a separator * `posix_long` - POSIX style using underscore as a separator, including country code * `posix_long_lowercase` - POSIX style using underscore as a separator, including country code, lower cased * `bcp_long` - BCP style using hyphen as a separator, including country code * `bcp_legacy` - BCP style using hyphen as a separator, legacy language codes * `bcp_lower` - BCP style using hyphen as a separator, lower cased * `android` - Android style * `appstore` - Apple App Store metadata style * `googleplay` - Google Play metadata style * `linux` - Linux style * `linux_lowercase` - Linux style, lower cased' oneOf: - $ref: '#/components/schemas/LanguageCodeStyleEnum' - $ref: '#/components/schemas/BlankEnum' inherit_language_code_style: type: boolean description: Use the language code style configured in the workspace. effective_language_code_style: type: string readOnly: true secondary_language: type: - integer - 'null' description: Additional language to show together with the source language while translating. inherit_secondary_language: type: boolean description: Use the secondary language configured in the workspace. effective_secondary_language: type: - integer - 'null' readOnly: true commit_message: type: string title: Commit message when translating description: You can use template language for various info, please consult the documentation for more details. inherit_commit_message: type: boolean title: Inherit commit message when translating description: Use the commit message when translating configured in the workspace. effective_commit_message: type: string readOnly: true add_message: type: string title: Commit message when adding translation description: You can use template language for various info, please consult the documentation for more details. inherit_add_message: type: boolean title: Inherit commit message when adding translation description: Use the commit message when adding translation configured in the workspace. effective_add_message: type: string readOnly: true delete_message: type: string title: Commit message when removing translation description: You can use template language for various info, please consult the documentation for more details. inherit_delete_message: type: boolean title: Inherit commit message when removing translation description: Use the commit message when removing translation configured in the workspace. effective_delete_message: type: string readOnly: true merge_message: type: string title: Commit message when merging translation description: You can use template language for various info, please consult the documentation for more details. inherit_merge_message: type: boolean title: Inherit commit message when merging translation description: Use the commit message when merging translation configured in the workspace. effective_merge_message: type: string readOnly: true addon_message: type: string title: Commit message when add-on makes a change description: You can use template language for various info, please consult the documentation for more details. inherit_addon_message: type: boolean title: Inherit commit message when add-on makes a change description: Use the commit message when add-on makes a change configured in the workspace. effective_addon_message: type: string readOnly: true pull_message: type: string title: Merge request message description: You can use template language for various info, please consult the documentation for more details. inherit_pull_message: type: boolean title: Inherit merge request message description: Use the merge request message configured in the workspace. effective_pull_message: type: string readOnly: true enforced_2fa: type: boolean title: Enforced two-factor authentication description: Requires contributors to have two-factor authentication configured before being able to contribute. machinery_settings: type: string format: uri readOnly: true locked: type: boolean readOnly: true announcements_url: type: string format: uri readOnly: true required: - announcements_url - categories_url - changes_list_url - components_list_url - credits_url - effective_add_message - effective_addon_message - effective_agreement - effective_check_flags - effective_commit_message - effective_delete_message - effective_language_code_style - effective_license - effective_merge_message - effective_new_lang - effective_pull_message - effective_secondary_language - id - labels_url - languages_url - lock_url - locked - machinery_settings - name - repository_url - slug - statistics_url - url - web - web_url 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 PaginatedFullUserList: 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/FullUser' Error403: type: object properties: code: $ref: '#/components/schemas/ErrorCode403Enum' detail: type: string attr: type: - string - 'null' required: - attr - code - detail PaginatedTranslationList: 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/Translation' ErrorResponse401: type: object properties: type: $ref: '#/components/schemas/ClientErrorEnum' errors: type: array items: $ref: '#/components/schemas/Error401' required: - errors - type PatchedNotification: type: object properties: notification: $ref: '#/components/schemas/NotificationEnum' id: type: integer readOnly: true scope: allOf: - $ref: '#/components/schemas/NotificationScopeEnum' minimum: -2147483648 maximum: 2147483647 frequency: allOf: - $ref: '#/components/schemas/FrequencyEnum' minimum: -2147483648 maximum: 2147483647 project: allOf: - $ref: '#/components/schemas/Project' readOnly: true component: allOf: - $ref: '#/components/schemas/Component' readOnly: true 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' PaginatedNotificationList: 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/Notification' FullUser: type: object properties: id: type: integer readOnly: true email: type: - string - 'null' title: E-mail format: email maxLength: 190 full_name: type: string maxLength: 150 username: type: string description: 'Username may only contain letters, numbers or the following characters: @ . + - _' maxLength: 150 groups: type: array items: type: string format: uri readOnly: true languages: type: array items: type: string format: uri readOnly: true notifications: type: string format: uri readOnly: true is_superuser: type: boolean title: Superuser status description: User has all possible permissions. is_active: type: boolean title: Active description: Mark user as inactive instead of removing. is_bot: type: boolean title: Robot user date_joined: type: string format: date-time readOnly: true date_expires: type: - string - 'null' format: date-time title: Expires description: The account will be disabled after the expiry. last_login: type: - string - 'null' format: date-time readOnly: true url: type: string format: uri readOnly: true statistics_url: type: string format: uri readOnly: true contributions_url: type: string format: uri readOnly: true required: - contributions_url - date_joined - full_name - groups - id - languages - last_login - notifications - statistics_url - url - username ErrorResponse400: type: object properties: type: $ref: '#/components/schemas/ErrorResponse400TypeEnum' errors: type: array items: $ref: '#/components/schemas/Error400' required: - errors - type VcsEnum: enum: - gerrit - git - git-force-push - local - mercurial - subversion type: string description: '* `gerrit` - Gerrit * `git` - Git * `git-force-push` - Git with force push * `local` - No remote repository * `mercurial` - Mercurial * `subversion` - Subversion' 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 BlankEnum: enum: - '' FrequencyEnum: enum: - 0 - 1 - 2 - 3 - 4 type: integer description: '* `0` - No notification * `1` - Instant notification * `2` - Daily digest * `3` - Weekly digest * `4` - Monthly digest' MergeStyleEnum: enum: - merge - rebase - merge_noff type: string description: '* `merge` - Merge * `rebase` - Rebase * `merge_noff` - Merge without fast-forward' UserGroupRequest: type: object properties: group_id: type: integer limit_language_codes: type: array items: type: string required: - group_id 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' 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 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