{"openapi":"3.1.0","info":{"title":"SimpleLocalize API","description":"Swagger documentation for SimpleLocalize API","contact":{"name":"API Support","email":"contact@simplelocalize.io"},"version":"6db980e_2026-04-01_13-03-08"},"externalDocs":{"description":"REST API Documentation","url":"https://simplelocalize.io/docs/api/get-started/"},"servers":[{"url":"https://api.simplelocalize.io","description":"Base URL"}],"tags":[{"name":"Translation keys","description":"Project translation key management endpoints"},{"name":"Hosting","description":"Translation Hosting management endpoints","externalDocs":{"description":"Endpoint Docs","url":"https://simplelocalize.io/docs/api/publish-translations/"}},{"name":"Activity","description":"Project activity"},{"name":"Projects","description":"Projects management endpoints","externalDocs":{"description":"Endpoint Docs","url":"https://simplelocalize.io/docs/api/translation-project-management/"}},{"name":"Tags","description":"Project tags management endpoints"},{"name":"Customers","description":"Customer endpoints for alternative translations","externalDocs":{"description":"Endpoint Docs","url":"https://simplelocalize.io/docs/api/customer-specific-api/"}},{"name":"Translations","description":"Project translation management endpoints"},{"name":"Auto-translation","description":"Auto-translation endpoints","externalDocs":{"description":"Endpoint Docs","url":"https://simplelocalize.io/docs/api/auto-translate/"}},{"name":"Languages","description":"Project language management endpoints","externalDocs":{"description":"Endpoint Docs","url":"https://simplelocalize.io/docs/api/language-api/"}},{"name":"File import & export","description":"Endpoints for importing and exporting files"}],"paths":{"/api/v2/projects":{"get":{"tags":["Projects"],"summary":"List projects","description":"List all projects. Requires Personal Token and returns only projects for the authenticated user.\n","operationId":"getProjectsV2","parameters":[{"name":"Authorization","in":"header","description":"Personal Token","required":true,"schema":{"type":"string"}},{"name":"sort","in":"query","description":"Select sorting method, default is alphabetical, case insensitive","required":false,"schema":{"type":"string","default":"alphabetical","description":"Select sorting method, default is alphabetical, case insensitive","enum":["alphabetical","translation_progress","number_of_keys","number_of_languages","number_of_members","last_edited","last_activity","created"],"example":"alphabetical"},"example":"alphabetical"}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"type":"array","items":{"$ref":"#/components/schemas/ApiProjectDetailsItemV2"}}}}}}}},"security":[{"Personal Access Token":[]}]},"post":{"tags":["Projects"],"summary":"Create project","description":"Create a new project","operationId":"createProjectV2","parameters":[{"name":"Authorization","in":"header","description":"Personal Token","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectCreateRequest"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/ProjectReadDetails"}}}}}}},"security":[{"Personal Access Token":[]}]}},"/api/v2/jobs/auto-translate":{"post":{"tags":["Auto-translation"],"summary":"Create auto-translation jobs","description":"Create auto-translation jobs for a project and multiple languages.\nThe endpoint doesn't allow to customize auto-translation options (e.g. source language, target language, etc.).\nThose values are taken from the latest used auto-translation configuration.\nThanks to that you can simply choose which languages you want to translate.\n","operationId":"autoTranslate","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiAutoTranslateRequestV2"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"type":"array","items":{"$ref":"#/components/schemas/JobItem"}}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v2/import":{"post":{"tags":["File import & export"],"summary":"Import translations from file","description":"Import translations to file","externalDocs":{"description":"Learn more","url":"https://simplelocalize.io/docs/api/import-translations/"},"operationId":"importTranslations","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}},{"name":"uploadFormat","in":"query","required":true,"schema":{"type":"string","enum":["android","android-strings","android-xml","csv-translations","tsv","excel","java-properties","localizable-xcstrings","localizable-strings","localizable-strings-dict","po-pot","php-array","string-resources","simplelocalize-json","single-language-json","multi-language-json","javascript","module-exports","yaml","qt-linguist","resx"]}},{"name":"importOptions","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","enum":["PUBLISH_AFTER_IMPORT","REPLACE_TRANSLATION_IF_FOUND","TRIM_LEADING_TRAILING_SPACES","UNESCAPE_NEW_LINES","UNESCAPE_SINGLE_QUOTES","SHEETS_AS_NAMESPACES","MULTI_LANGUAGE","LANGUAGES_NESTED"]}}},{"name":"languageKey","in":"query","required":false,"schema":{"type":"string"}},{"name":"customerId","in":"query","required":false,"schema":{"type":"string"}},{"name":"namespace","in":"query","required":false,"schema":{"type":"string"}},{"name":"tags","in":"query","required":false,"schema":{"type":"array","items":{"type":"string"}}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"type":"file","format":"binary"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/ImportFileResponse"}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v2/environments":{"get":{"tags":["Hosting"],"summary":"Get all environments","description":"The endpoint is used for getting all environments in the project.\nIt returns a list of environments with their details, including the latest and production environments.\n","operationId":"getEnvironments","responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"type":"array","items":{"$ref":"#/components/schemas/CdnEnvironmentApiDetails"}}}}}}}},"security":[{"Project API Key":[]}]},"post":{"tags":["Hosting"],"summary":"Create a new environment","description":"The endpoint is used for creating a new environment in the project.\n- You can create a custom environment with a unique key, name, and color.\n- The created environment can be used for publishing translations.\n- The environment key must be unique within the project and cannot be one of the reserved keys: `_latest`, `_production`.\n","operationId":"createEnvironment","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CdnEnvironmentCreateApiRequest"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Project API Key":[]}]}},"/api/v2/environments/{environmentKey}/publish":{"post":{"tags":["Hosting"],"summary":"Publish translations to given environment","description":"The endpoint is used for publishing translations for given environment.\n- By default, every project has two Translation Hosting environments (`_latest` and `_production`) and Translation Editor environment.\n- Publication always (if not specified differently in the project settings) happens from the Translation Editor environment to the `_latest` environment, and then to the `_production` environment.\n- There is no way to change this flow other than creating a custom environment in the project settings.\n- In order to publish translations to the Production environment, you need use `_production` as 'environmentKey' parameter.\n- In order to publish translations to the Latest environment, you need use `_latest` as `environmentKey` parameter.\n- In order to publish translations to the custom environment, you need use your custom environment key as `environmentKey` parameter.\n- Labels can be specified only for the Latest environment.\n","operationId":"publishTranslations","parameters":[{"name":"environmentKey","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CdnEnvironmentApiRequestPublication"}}}},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Project API Key":[]}]}},"/api/v1/translation-keys":{"get":{"tags":["Translation keys"],"summary":"Get translation keys with metadata","description":"Get translation keys for a project.\n\nAll parameters are optional.\n\nParameters are used for filtering translations by given values, and they are case sensitive and exact match.\n\nDefault page size is 100 and maximum page size is 2500. Page size can be changed by `size` parameter.\n\nDefault page is 0. Page can be changed by `page` parameter.\n","operationId":"getTranslationKeys","parameters":[{"name":"key","in":"query","required":false,"schema":{"type":"string"}},{"name":"namespace","in":"query","required":false,"schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","enum":["last_seen_at","modified_at","created_at","deprecated_at"]}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0,"minimum":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":100,"maximum":2500,"minimum":0}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedTranslationKeysV2RestResponse"}}}}},"security":[{"Project API Key":[]}]},"post":{"tags":["Translation keys"],"summary":"Create translation key","description":"Creates translation key for a project. It throws an error if translation key already exists.\n\n`key` is a required field, and it cannot be null or empty. The endpoint throws an error if `key` is null or empty.\n\n`namespace`, `description` and `codeDescription` are optional fields, and they can be null or empty. Null and empty values are ignored.\n\nMax size of `description` and `codeDescription` is 500 characters, otherwise, the endpoint throws an error.\n\nIf `namespace` is not provided, the default namespace is used.\n\nIf `description` is not provided, the empty string is used. Description is used for translation key comments that are visible in the editor, and they be edited in the editor.\n\nIf `codeDescription` is not provided, the empty string is used. Code description is used for code comments that are visible in the editor, but they cannot be edited in the editor.\n\nIf `charactersLimit` is not provided (or -1), then no limit is set.\n\nSet `lock: true` to prevent the translation key from being modified.\n\nSet `deprecated: true` to mark the translation key as deprecated in the Web UI.\n","operationId":"createTranslationKey","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTranslationKeyRequestV2"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Project API Key":[]}]},"delete":{"tags":["Translation keys"],"summary":"Delete translation key","description":"Deletes translation key for a project","operationId":"deleteTranslationKey","parameters":[{"name":"key","in":"query","required":true,"schema":{"type":"string","maxLength":500,"minLength":0}},{"name":"namespace","in":"query","required":false,"schema":{"type":"string","default":"","maxLength":128,"minLength":0}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Project API Key":[]}]},"patch":{"tags":["Translation keys"],"summary":"Update translation key","description":"Updates key, namespace, and/or it's metadata. It throws an error if translation key does not exist or if the new key/namespace combination already exists.\n\nUse query `key` and `namespace` parameters to identify the translation key, and update it with the provided values in the request body.\n\nThe last seen date is updated automatically even if there is no changes.\n\nMax size of description and code description is 500 characters, otherwise, the endpoint throws an error.\n\nSet `lock: true` to prevent the translation key from being modified.\n\nTo clear the characters limit, set it to -1.\n","operationId":"updateTranslationKey","parameters":[{"name":"key","in":"query","required":true,"schema":{"type":"string"}},{"name":"namespace","in":"query","required":false,"schema":{"type":"string","default":""}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTranslationKeyRequestV2"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Project API Key":[]}]}},"/api/v1/translation-keys/screenshots":{"post":{"tags":["Translation keys"],"summary":"Upload translation key screenshot","description":"Uploads translation key screenshot from image encoded in base64. It throws an error if translation key does not exist.\n\nThe uploaded screenshot replaces the existing screenshot if it exists.\n\n`key` is a required field, and it cannot be null or empty. The endpoint throws an error if `key` is null or empty.\n\n`namespace` is an optional field, and it can be null or empty. Null and empty values are ignored.\n\nIf `namespace` is not provided, then an empty namespace is used.\n\nMax size of screenshot is 2MB for base64, otherwise, the endpoint throws an error.\n\nOnly PNG, JPG and JPEG formats are supported, otherwise, the endpoint may throw an error.\n","operationId":"uploadTranslationKeyScreenshot","parameters":[{"name":"key","in":"query","required":true,"schema":{"type":"string"}},{"name":"namespace","in":"query","required":false,"schema":{"type":"string","default":""}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadTranslationKeyScreenshotRequestV2"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Project API Key":[]}]}},"/api/v1/translation-keys/screenshots/file-upload":{"post":{"tags":["Translation keys"],"summary":"Upload translation key screenshot from file","description":"Uploads translation key screenshot from a file. It throws an error if translation key does not exist.\n\nThe uploaded screenshot replaces the existing screenshot if it exists.\n\n`key` is a required field, and it cannot be null or empty. The endpoint throws an error if `key` is null or empty.\n\n`namespace` is an optional field, and it can be null or empty. Null and empty values are ignored.\n\nIf `namespace` is not provided, then an empty namespace is used.\n\nMax size of screenshot is 4MB for file upload, otherwise, the endpoint throws an error.\n\nOnly PNG, JPG and JPEG formats are supported, otherwise, the endpoint may throw an error.\n","operationId":"uploadTranslationKeyScreenshotFileUpload","parameters":[{"name":"key","in":"query","required":true,"schema":{"type":"string"}},{"name":"namespace","in":"query","required":false,"schema":{"type":"string","default":""}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"file":{"type":"string","format":"binary"}},"required":["file"]}}}},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Project API Key":[]}]}},"/api/v1/translation-keys/screenshots/bulk":{"post":{"tags":["Translation keys"],"summary":"Upload translation key screenshot from file","operationId":"uploadTranslationKeyScreenshotFileUploadBulk","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadMultipleScreenshot"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Project API Key":[]}]}},"/api/v1/translation-keys/bulk":{"post":{"tags":["Translation keys"],"summary":"Create translation keys in bulk","description":"Creates translation keys for a project. In the same manner as the single key creation endpoint.\n\nIt doesn't throw an error if translation key already exists, but it returns a list of failures.\n\nYou can create up to 100 translation keys at once.\n","operationId":"createTranslationKeyBulk","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTranslationKeyBulkRequestV2"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/CreateTranslationKeyBulkResponseV2"}}}}}}},"security":[{"Project API Key":[]}]},"delete":{"tags":["Translation keys"],"summary":"Delete translation keys in bulk","description":"Deletes translation keys for a project. In the same manner as the single key delete endpoint.\n\nIt doesn't throw an error if translation key doesn't exist, but it returns a list of failures.\n\nYou can delete up to 100 translation keys at once.\n","operationId":"deleteTranslationKeyBulk","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteTranslationKeyBulkRequestV2"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/DeleteTranslationKeyBulkResponseV2"}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v1/tags":{"get":{"tags":["Tags"],"summary":"Get project tags","description":"Returns a list of tags for a project.\n","operationId":"getTags","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"type":"array","items":{"$ref":"#/components/schemas/ListTagResponseV1"}}}}}}}},"security":[{"Project API Key":[]}]},"post":{"tags":["Tags"],"summary":"Create tag","description":"Creates a tag for a project. It throws an error if the tag already exists.\n- `color` must be a valid HEX color code (e.g. FF5733) without the leading `#`\n- `name` must be between 2 and 16 characters and can contain only letters, numbers, spaces, underscores, dashes and dots.\n","operationId":"createTag","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTagRequestV1"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Project API Key":[]}]}},"/api/v1/projects/{projectToken}/contributors":{"get":{"tags":["Projects"],"summary":"Get project contributors","description":"Get all contributors of the project.\n- Requires Personal Token for authentication and the project must be on Business plan to manage contributors.\n- Every contributor has a name, email, status and role.\n- Translators can have assigned languages, tags, and customers with access levels.\n- Status can be either `ACCEPTED` or `INVITED`.\n- Role can be either `TRANSLATOR`, `ADMIN` or `OWNER`.\n\n### Permissions\n\nAvailable permissions for `TRANSLATOR` role:\n- `VIEW_ACTIVITY`\n- `IMPORT_FILES`\n- `EXPORT_FILES`\n- `MANAGE_TRANSLATION_KEYS`\n- `ADD_LANGUAGES`\n- `UPDATE_LANGUAGES`\n- `DELETE_LANGUAGES`\n- `AUTO_TRANSLATE`\n- `CHANGE_TRANSLATIONS`\n- `REVIEW_TRANSLATIONS`\n- `CHANGE_CUSTOMER_TRANSLATIONS`\n- `REVIEW_CUSTOMER_TRANSLATIONS`\n- `CHANGE_DESCRIPTION`\n- `PUBLISH_TRANSLATIONS`\n- `ACCESS_COMMENTS`\n\nAccess levels: `ALLOW` and `DENY`.\n\n\n### Language access levels:\n- `WRITE_READ` means the contributor can perform the action.\n- `READ` means the contributor can read the translations, but cannot write them.\n- `HIDDEN` means the contributor cannot perform the action.\n\n\n### Tag and Customer access levels:\n- `WRITE_READ` means the contributor can perform the action.\n- `HIDDEN` means the contributor cannot perform the action.\n","operationId":"getProjectContributors","parameters":[{"name":"projectToken","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"type":"array","items":{"$ref":"#/components/schemas/ApiProjectContributor"}}}}}}}},"security":[{"Personal Access Token":[]}]},"post":{"tags":["Projects"],"summary":"Invite project contributor","description":"Invite a new contributor to the project. The contributor will receive an email with an invitation link same as in the web app.\n- The contributor will be able to accept the invitation and join the project.\n- The endpoint requires Personal Token for authentication and the project must be on Business plan to manage contributors.\n- The endpoint is rate-limited to 1 request per second.\n- The request body must contain the contributor's email, role, and optional assigned languages, tags, and customers.\n- The role can be either `TRANSLATOR` or `ADMIN`. Only `TRANSLATOR` role allows to define assigned languages, tags, and customers.\n- The assigned languages, tags, and customers must be defined in the request body.\n- The default access level for languages, tags, and customers can be defined in the request body.\n\n### Translator role permissions\n\n- `VIEW_ACTIVITY`\n- `IMPORT_FILES`\n- `EXPORT_FILES`\n- `MANAGE_TRANSLATION_KEYS`\n- `ADD_LANGUAGES`\n- `UPDATE_LANGUAGES`\n- `DELETE_LANGUAGES`\n- `AUTO_TRANSLATE`\n- `CHANGE_TRANSLATIONS`\n- `REVIEW_TRANSLATIONS`\n- `CHANGE_CUSTOMER_TRANSLATIONS`\n- `REVIEW_CUSTOMER_TRANSLATIONS`\n- `CHANGE_DESCRIPTION`\n- `PUBLISH_TRANSLATIONS`\n- `ACCESS_COMMENTS`\n\nAccess levels: `ALLOW` and `DENY`.\n\n### Language access levels:\n- `WRITE_READ` means the contributor can perform the action.\n- `READ` means the contributor can read the translations, but cannot write them.\n- `HIDDEN` means the contributor cannot perform the action.\n\n\n### Tag and Customer access levels:\n- `WRITE_READ` means the contributor can perform the action.\n- `HIDDEN` means the contributor cannot perform the action.\n\n","operationId":"inviteProjectContributor","parameters":[{"name":"projectToken","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiProjectContributorInviteRequest"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Personal Access Token":[]}]},"delete":{"tags":["Projects"],"summary":"Remove contributor from project","description":"Remove a contributor from the project","operationId":"removeProjectContributor","parameters":[{"name":"projectToken","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiProjectContributorRemoveRequest"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Personal Access Token":[]}]}},"/api/v1/languages":{"get":{"tags":["Languages"],"summary":"Get languages","description":"Returns all languages for the project. The response contains a list of language objects with their keys and names.","operationId":"getLanguages","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"type":"array","items":{"$ref":"#/components/schemas/LanguageDetailsResponseV1"}}}}}}}},"security":[{"Project API Key":[]}]},"post":{"tags":["Languages"],"operationId":"createLanguage","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LanguageCreateRequestV1"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/LanguageDetailsResponseV1"}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v1/customers":{"get":{"tags":["Customers"],"operationId":"getAllCustomers","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"type":"array","items":{"$ref":"#/components/schemas/CustomerDetailsResponseV1"}}}}}}}},"security":[{"Project API Key":[]}]},"post":{"tags":["Customers"],"operationId":"createCustomer","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerCreateRequestV1"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/CustomerDetailsResponseV1"}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v1/auto-translate":{"post":{"tags":["Auto-translation"],"summary":"Auto-translate single text","description":"Auto-translate single text for a project","operationId":"autoTranslateText","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AutoTranslateSingleTextRequest"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/ApiSingleTranslateResponse"}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v2/translations":{"get":{"tags":["Translations"],"summary":"Get translations","description":"Get translations for a project.\n\nAll parameters are optional.\n\n`text` - use for searching translations by text value with contains ignore-case operator. Minimum length of the text is 3 characters.\nIf `text` parameter is provided, then results are limited to 10.\nOther parameters are used for filtering translations by given values.\n\n`baseOnly` - use `true` to get translations without customer translations, default value is `false`.\n\n`version` - use `REVIEWED` to get last reviewed version of translations (if exists, otherwise it returns empty text). By default this parameter is empty and it returns current version from the translation editor.\n\n`size` - default page size is 100 and maximum page size is 2500.\n\n`page` - default page is 0.\n","operationId":"getTranslations","parameters":[{"name":"key","in":"query","required":false,"schema":{"type":"string"}},{"name":"namespace","in":"query","required":false,"schema":{"type":"string"}},{"name":"language","in":"query","required":false,"schema":{"type":"string"}},{"name":"text","in":"query","required":false,"schema":{"type":"string","maxLength":2147483647,"minLength":3}},{"name":"query","in":"query","required":false,"schema":{"type":"string","maxLength":2147483647,"minLength":3}},{"name":"textStatus","in":"query","required":false,"schema":{"type":"string","default":"","enum":["EMPTY","NOT_EMPTY",""]}},{"name":"customerId","in":"query","required":false,"schema":{"type":"string"}},{"name":"baseOnly","in":"query","required":false,"schema":{"type":"boolean","default":false}},{"name":"reviewStatus","in":"query","required":false,"schema":{"type":"string","default":"","enum":["REVIEWED","NOT_REVIEWED",""]}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0,"minimum":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":100,"maximum":2500,"minimum":1}},{"name":"sortBy","in":"query","required":false,"schema":{"type":"string","default":"","enum":["","lastModifiedAt"]}},{"name":"sortOrder","in":"query","required":false,"schema":{"type":"string","default":"desc","enum":["asc","desc"]}},{"name":"version","in":"query","required":false,"schema":{"type":"string","enum":["REVIEWED"]}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"oneOf":[{"$ref":"#/components/schemas/PagedModelApiTranslationResponseV2"},{"$ref":"#/components/schemas/PagedTranslationsV2RestResponse"}]}}}}}}},"security":[{"Project API Key":[]}]},"patch":{"tags":["Translations"],"summary":"Update single translation","description":"Updates a single translation.\n\nIt throws an error if the translation key (with optional namespace), language key or customerId does not exist.\n\n`key` and `language` are required fields.\n\n`text` and `reviewStatus` are the fields that can be updated.\n\nIf `text` is not provided, then the translation is not updated.\n\nIf `reviewStatus` is not provided, then the translation is marked as `NOT_REVIEWED`. Allowed values are `REVIEWED` and `NOT_REVIEWED`.\n","operationId":"updateTranslations","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTranslationRequestV2"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Project API Key":[]}]}},"/api/v2/translations/bulk":{"patch":{"tags":["Translations"],"summary":"Update translations in bulk","description":"Updates translations in bulk with a single request.\n\nIt returns a list of failed translation updates with error messages.\n\nYou can update up to 100 translations at once.\n\n","operationId":"updateTranslationsBulk","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTranslationBulkRequestV2"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/UpdateTranslationBulkResponseV2"}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v1/translation-keys/{id}":{"patch":{"tags":["Translation keys"],"summary":"Update translation key by ID","description":"Updates key, namespace, description and/or code description for a project by Translation Key ID. It throws an error if translation key does not exist or if the new key/namespace combination already exists.\n\nKey, namespace, description and code description are optional fields, and they can be null or empty. Null and empty values are ignored, and they are not updated.\n\nThe last seen date is updated automatically even if there is no changes.\n\nMax size of description and code description is 500 characters, otherwise, the endpoint throws an error.\n\nTo clear the characters limit, set it to -1.\n","operationId":"updateTranslationKeyById","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTranslationKeyRequestV2"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Project API Key":[]}]}},"/api/v1/tags/{tagName}":{"delete":{"tags":["Tags"],"summary":"Delete tag","description":"Deletes a tag for a project.","operationId":"deleteTag","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","required":true,"schema":{"type":"string","maxLength":16,"minLength":2,"pattern":"[A-Za-z0-9\\s\\_\\-\\.]+"}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Project API Key":[]}]},"patch":{"tags":["Tags"],"summary":"Update tag","description":"Updates a tag for a project. It throws an error if the tag does not exist.\n","operationId":"updateTag","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}},{"name":"tagName","in":"path","required":true,"schema":{"type":"string","maxLength":16,"minLength":2,"pattern":"[A-Za-z0-9\\s\\_\\-\\.]+"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTagRequestV1"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Project API Key":[]}]}},"/api/v1/languages/{languageKey}":{"get":{"tags":["Languages"],"operationId":"getLanguage","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}},{"name":"languageKey","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/LanguageDetailsResponseV1"}}}}}}},"security":[{"Project API Key":[]}]},"delete":{"tags":["Languages"],"operationId":"deleteLanguage","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}},{"name":"languageKey","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Project API Key":[]}]},"patch":{"tags":["Languages"],"operationId":"updateLanguage","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}},{"name":"languageKey","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LanguageUpdateRequestV1"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/LanguageDetailsResponseV1"}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v1/customers/{customerKey}":{"get":{"tags":["Customers"],"operationId":"getCustomer","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}},{"name":"customerKey","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/CustomerDetailsResponseV1"}}}}}}},"security":[{"Project API Key":[]}]},"delete":{"tags":["Customers"],"operationId":"deleteCustomer","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}},{"name":"customerKey","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK"}},"security":[{"Project API Key":[]}]},"patch":{"tags":["Customers"],"operationId":"updateCustomer","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}},{"name":"customerKey","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerUpdateRequestV1"}}},"required":true},"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/CustomerDetailsResponseV1"}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v4/export":{"get":{"tags":["File import & export"],"summary":"Export translations to file(s)","description":"Export translations to file(s)","externalDocs":{"description":"Learn more","url":"https://simplelocalize.io/docs/api/export-translations/"},"operationId":"exportTranslations","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}},{"name":"downloadFormat","in":"query","required":false,"schema":{"type":"string","enum":["android","android-strings","android-xml","csv-translations","tsv","excel","java-properties","localizable-xcstrings","localizable-strings","localizable-strings-dict","po-pot","php-array","string-resources","simplelocalize-json","single-language-json","multi-language-json","javascript","module-exports","yaml","qt-linguist","resx"]}},{"name":"downloadOptions","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","enum":["SPLIT_BY_LANGUAGES","SPLIT_BY_NAMESPACES","INCLUDE_DESCRIPTIONS","ONLY_NOT_TRANSLATED","ONLY_TRANSLATED","WRITE_NESTED","ESCAPE_NEW_LINES","ESCAPE_SINGLE_QUOTES","ZIP_FILES","SHEETS_AS_NAMESPACES","MULTI_LANGUAGE","LANGUAGES_NESTED"]}}},{"name":"languageKeys","in":"query","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"tags","in":"query","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"languageOrder","in":"query","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"customerId","in":"query","required":false,"schema":{"type":"string"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","enum":["DEFAULT","NEWEST_KEYS_FIRST","NEWEST_KEYS_LAST","NAMESPACES","IMPORT_ORDER"]}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/GetExportTranslationsV4"}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v2/translation-keys/list":{"get":{"tags":["Translation keys"],"summary":"Get all translation keys","description":"Get all translation keys for a project without metadata, only id, key and namespace. No pagination required.\n","operationId":"getAllTranslationKeysV2","parameters":[{"name":"id","in":"query","required":false,"schema":{"type":"string"}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"type":"array","items":{"$ref":"#/components/schemas/TranslationKeyAllResponseV2"}}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v2/project":{"get":{"tags":["Projects"],"summary":"Get project details","description":"Get all project details","operationId":"getProjectDetailsV2","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","description":"Project API Key","required":true,"schema":{"type":"string"}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/ApiProjectDetailsV2"}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v2/jobs":{"get":{"tags":["Auto-translation"],"summary":"Get jobs","description":"Get jobs for a project.\n","operationId":"getJobs","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}},{"name":"status","in":"query","required":false,"schema":{"type":"string"}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"type":"array","items":{"$ref":"#/components/schemas/JobItemV2"}}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v2/jobs/{jobId}":{"get":{"tags":["Auto-translation"],"summary":"Get job","description":"Get job for a project by jobId.\n","operationId":"getJob","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}},{"name":"jobId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/JobItemV2"}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v2/environments/{environmentKey}":{"get":{"tags":["Hosting"],"summary":"Get hosting status for given environment","description":"The endpoint is used for getting hosting status for given environment.\n","operationId":"getEnvironmentStatus","parameters":[{"name":"environmentKey","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/ApiEnvironmentStatusResponse"}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v1/translation-keys/list":{"get":{"tags":["Translation keys"],"summary":"Get all translation keys","description":"Get all translation keys for a project without metadata, only key and namespace. No pagination required.\n","operationId":"getAllTranslationKeys","responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"type":"array","items":{"$ref":"#/components/schemas/TranslationKeyAllResponseV1"}}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v1/translation-keys/details":{"get":{"tags":["Translation keys"],"summary":"Get translation key details","description":"Get translation key details for a project\n\n`key` is a required field, and it cannot be null or empty. The endpoint throws an error if `key` is null or empty.\n\n`namespace` is an optional field, and it can be null or empty. Null and empty values are ignored.\n\nIf `namespace` is not provided, then an empty namespace is used.\n\n\n\nPlease not that we may return additional fields in the future.\n","operationId":"getTranslationKeyDetails","parameters":[{"name":"key","in":"query","required":true,"schema":{"type":"string"}},{"name":"namespace","in":"query","required":false,"schema":{"type":"string","default":""}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/TranslationKeyDetailsResponseV2"}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v1/file-formats":{"get":{"tags":["File import & export"],"operationId":"getFileFormats","responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"$ref":"#/components/schemas/FileFormatsResponse"}}}}}}}}},"/api/v1/activity":{"get":{"tags":["Activity"],"summary":"Get project activity","description":"Get project activity. Maximum page size is 50, default page size is 10. You can fetch up to 500 latest entries for the project.\n","operationId":"getActivity","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":0,"minimum":0}},{"name":"size","in":"query","required":false,"schema":{"type":"integer","format":"int32","default":10,"maximum":50,"minimum":1}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"type":"array","items":{"$ref":"#/components/schemas/ActivityItemResponseV1"}}}}}}}},"security":[{"Project API Key":[]}]}},"/api/v1/activity/{activityId}/changes":{"get":{"tags":["Activity"],"summary":"Get project activity changes","description":"List of all changes for the given activity id\n","operationId":"getActivityChanges","parameters":[{"name":"X-SimpleLocalize-Token","in":"header","required":true,"schema":{"type":"string"}},{"name":"activityId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"402":{"description":"Payment Required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"properties":{"msg":{"type":"string","default":"OK"},"status":{"type":"integer","format":"int32","default":200},"data":{"type":"array","items":{"$ref":"#/components/schemas/ContentChangeRequest"}}}}}}}},"security":[{"Project API Key":[]}]}}},"components":{"schemas":{"ApiError":{"type":"object","properties":{"status":{"type":"integer","format":"int32"},"title":{"type":"string"},"msg":{"type":"string"},"code":{"type":"string"},"errors":{"type":"array","items":{"type":"string"}},"traceId":{"type":"string"}}},"ProjectCreateRequest":{"type":"object","properties":{"name":{"type":"string","maxLength":100,"minLength":1}},"required":["name"]},"CustomerOverride":{"type":"object","properties":{"key":{"type":"string"},"description":{"type":"string"},"displayName":{"type":"string"}}},"Language":{"type":"object","properties":{"key":{"type":"string"},"name":{"type":"string"},"isDefault":{"type":"boolean"},"order":{"type":"integer","format":"int32"},"flag":{"type":"string"},"access":{"type":"string","enum":["WRITE_READ","READ","HIDDEN"]},"translationProvider":{"type":"string","enum":["GOOGLE_TRANSLATE","DEEPL","OPEN_AI","OPEN_ROUTER","CUSTOM_AI","EXTERNAL_API","SYSTRAN","TRANSLATION_MEMORY","DISABLED"]},"providerLanguage":{"type":"string"},"sourceLanguage":{"type":"string"},"deeplFormality":{"type":"string"},"isLocked":{"type":"boolean"},"attributes":{"type":"object","additionalProperties":{}},"context":{"type":"string"}}},"ProjectReadDetails":{"type":"object","properties":{"name":{"type":"string"},"languages":{"type":"array","items":{"$ref":"#/components/schemas/Language"}},"customers":{"type":"array","items":{"$ref":"#/components/schemas/CustomerOverride"}},"projectToken":{"type":"string"},"apiKey":{"type":"string"},"keys":{"type":"integer","format":"int32"},"unpublishedChanges":{"type":"integer","format":"int32"},"translatedPercentage":{"type":"number","format":"double"},"translatedKeysByLanguage":{"type":"object","additionalProperties":{"type":"integer","format":"int32"}}}},"ApiAutoTranslateRequestV2":{"type":"object","properties":{"languageKeys":{"type":"array","description":"Project source language keys, if not provided then all languages will be translated. Auto-translation configuration will be used from the last auto-translation job.","example":"[en_US]","items":{"type":"string"}},"options":{"type":"array","description":"Options for auto-translation","enum":["FORCE_REPLACE","USE_TRANSLATION_KEYS"],"example":[],"items":{"type":"string","enum":["FORCE_REPLACE","AUTO_PUBLISH","EXCLUDE_VARIABLES","USE_TRANSLATION_KEYS"]}}}},"JobItem":{"type":"object","properties":{"jobId":{"type":"string"},"progress":{"type":"number","format":"float"},"state":{"type":"string"},"type":{"type":"string"},"message":{"type":"string"},"started":{"type":"string","format":"date-time"},"metadata":{"type":"object","additionalProperties":{"type":"string"}}}},"ImportFileResponse":{"type":"object","properties":{"numberOfKeysFound":{"type":"integer","format":"int64"},"numberOfUniqueKeysFound":{"type":"integer","format":"int64"},"foundLanguages":{"type":"array","items":{"$ref":"#/components/schemas/Language"}}}},"CdnEnvironmentCreateApiRequest":{"type":"object","properties":{"key":{"type":"string","description":"Unique key for the environment. Must be lowercase, contain only letters, numbers, and dashes.","example":"staging","maxLength":32,"minLength":3,"pattern":"[a-z0-9\\-]+"},"name":{"type":"string","description":"Name of the environment. Can contain letters, numbers, spaces, underscores, and dashes.","example":"Staging Environment","maxLength":32,"minLength":3,"pattern":"[A-Za-z0-9\\s\\_\\-]+"},"color":{"type":"string","description":"Color of the environment in hex format for Web UI. Must be 6 characters long and valid hex color.","example":"ff5733","maxLength":6,"minLength":6,"pattern":"^[0-9a-fA-F]+$"}},"required":["color","key","name"]},"CdnEnvironmentApiRequestPublication":{"type":"object","properties":{"labels":{"type":"array","items":{"type":"string","maxLength":50,"minLength":0},"maxItems":10,"minItems":0}}},"CreateTranslationKeyRequestV2":{"type":"object","properties":{"key":{"type":"string","maxLength":500,"minLength":0},"namespace":{"type":"string","maxLength":128,"minLength":0},"description":{"type":"string","maxLength":500,"minLength":0},"codeDescription":{"type":"string","maxLength":500,"minLength":0},"charactersLimit":{"type":"integer","format":"int32"},"lock":{"type":"boolean"},"deprecated":{"type":"boolean"},"tags":{"type":"array","items":{"type":"string"},"maxItems":5,"minItems":0}},"required":["key"]},"UploadTranslationKeyScreenshotRequestV2":{"type":"object","properties":{"base64":{"type":"string","example":"/9j/4AAQSkZJRgABAgAAZABkAAD/...","minLength":1}},"required":["base64"]},"UploadMultipleScreenshot":{"type":"object","properties":{"base64":{"type":"string","minLength":1},"name":{"type":"string","minLength":1},"ocr":{"type":"array","items":{"type":"string"}},"translationKeys":{"type":"array","items":{"$ref":"#/components/schemas/UploadScreenshotKeyNamespace"},"maxItems":1000,"minItems":1}},"required":["base64","name"]},"UploadScreenshotKeyNamespace":{"type":"object","properties":{"key":{"type":"string","maxLength":500,"minLength":0},"namespace":{"type":"string","maxLength":128,"minLength":0}},"required":["key"]},"CreateTranslationKeyBulkRequestV2":{"type":"object","properties":{"translationKeys":{"type":"array","items":{"$ref":"#/components/schemas/CreateTranslationKeyRequestV2"},"maxItems":100,"minItems":0}}},"CreateTranslationKeyBulkResponseV2":{"type":"object","properties":{"failures":{"type":"array","items":{"$ref":"#/components/schemas/Failure"}}}},"Failure":{"type":"object","properties":{"entry":{"$ref":"#/components/schemas/UpdateTranslationRequestV2"},"message":{"type":"string"}}},"CreateTagRequestV1":{"type":"object","properties":{"name":{"type":"string","description":"Tag name","example":"my-feature"},"color":{"type":"string","description":"Tag color","example":"6e56ce"}}},"ApiProjectContributorInviteRequest":{"type":"object","properties":{"email":{"type":"string","format":"email","description":"Email of the contributor. Must be a valid email address.","example":"john@exmaple.com","minLength":1},"role":{"type":"string","description":"Role of the contributor. Only 'TRANSLATOR' role allows to define assigned languages, tags, and customers.","enum":["TRANSLATOR","ADMIN"],"example":"TRANSLATOR"},"assignedLanguages":{"type":"array","description":"Assigned languages with access levels. Only applicable if role is 'TRANSLATOR'.","items":{"$ref":"#/components/schemas/AssignedLanguage"}},"defaultLanguageAccess":{"type":"string","description":"Default access level for languages. Only applicable if role is 'TRANSLATOR'.","enum":["ALLOW","DENY"],"example":"ALLOW"},"assignedTags":{"type":"array","description":"Assigned tags with access levels. Only applicable if role is 'TRANSLATOR'.","items":{"$ref":"#/components/schemas/AssignedTag"}},"defaultTagAccess":{"type":"string","description":"Default access level for tags. Only applicable if role is 'TRANSLATOR'.","enum":["ALLOW","DENY"],"example":"ALLOW"},"assignedCustomers":{"type":"array","description":"Assigned customers with access levels. Only applicable if role is 'TRANSLATOR'.","items":{"$ref":"#/components/schemas/AssignedCustomer"}},"defaultCustomerAccess":{"type":"string","description":"Default access level for customers. Only applicable if role is 'TRANSLATOR'.","enum":["ALLOW","DENY"],"example":"ALLOW"},"permissions":{"type":"array","description":"List of permissions for the contributor. If not provided, default permissions will be assigned based on the role.","example":[{"key":"AUTO_TRANSLATE","access":"ALLOW"}],"items":{"$ref":"#/components/schemas/Permission"}}},"required":["email","role"]},"AssignedCustomer":{"type":"object","properties":{"key":{"type":"string","description":"Customer key","example":"customer123"},"access":{"type":"string","description":"Access level for the customer","enum":["ALLOW","DENY"],"example":"ALLOW"}},"required":["access","key"]},"AssignedLanguage":{"type":"object","properties":{"key":{"type":"string","description":"Language key, e.g. 'en', 'fr', 'de'","example":"en"},"access":{"type":"string","description":"Access level for the language","enum":["ALLOW","DENY"],"example":"ALLOW"}},"required":["access","key"]},"AssignedTag":{"type":"object","properties":{"name":{"type":"string","description":"Tag name","example":"marketing"},"access":{"type":"string","description":"Access level for the tag","enum":["ALLOW","DENY"],"example":"ALLOW"}},"required":["access","name"]},"Permission":{"type":"object","properties":{"key":{"type":"string","description":"Permission key, e.g. 'AUTO_TRANSLATE'","enum":["AUTO_TRANSLATE, CHANGE_TRANSLATIONS, REVIEW_TRANSLATIONS, PUBLISH_TRANSLATIONS, MANAGE_TRANSLATION_KEYS, ADD_LANGUAGES, UPDATE_LANGUAGES, DELETE_LANGUAGES, IMPORT_FILES, EXPORT_FILES, VIEW_ACTIVITY, ACCESS_COMMENTS, CHANGE_CUSTOMER_TRANSLATIONS, REVIEW_CUSTOMER_TRANSLATIONS, CHANGE_DESCRIPTION"],"example":"AUTO_TRANSLATE"},"access":{"type":"string","description":"Access level for the permission","enum":["ALLOW","DENY"],"example":"ALLOW"}},"required":["access","key"]},"LanguageCreateRequestV1":{"type":"object","properties":{"key":{"type":"string","maxLength":20,"minLength":1},"name":{"type":"string","maxLength":200,"minLength":0}},"required":["key"]},"LanguageDetailsResponseV1":{"type":"object","properties":{"key":{"type":"string"},"name":{"type":"string"}}},"CustomerCreateRequestV1":{"type":"object","properties":{"key":{"type":"string","maxLength":40,"minLength":0},"displayName":{"type":"string","maxLength":32,"minLength":0},"description":{"type":"string","maxLength":255,"minLength":0}},"required":["key"]},"CustomerDetailsResponseV1":{"type":"object","properties":{"key":{"type":"string"},"displayName":{"type":"string"},"description":{"type":"string"}}},"AutoTranslateSingleTextRequest":{"type":"object","properties":{"targetLanguage":{"type":"string","description":"Provider target language key","example":"en_US","minLength":1},"targetProjectLanguage":{"type":"string","description":"Project target language key (optional). It's required to load additional information about the target language (e.g. DeepL glossary).","example":"pl_PL"},"deeplFormality":{"type":"string","description":"DeepL formality","enum":["default, more, less"],"example":"default"},"description":{"type":"string","description":"Description that will be used as a context for translation. It's useful for better translation quality.","example":"This is a button label in Sign Up form."},"translationProvider":{"type":"string","description":"Provider for auto-translation","enum":["GOOGLE_TRANSLATE","DEEPL","OPEN_AI"],"example":"GOOGLE_TRANSLATE"},"sourceText":{"type":"string","description":"Source text to translate","example":"Hello world!","minLength":1},"sourceProjectLanguage":{"type":"string","description":"Project source language key (optional). It's required to load additional information about the source language (e.g. DeepL glossary).","example":"pl_PL"},"sourceLanguage":{"type":"string","description":"Provider source language key (optional). If not provided, the source language will be detected automatically.","example":"PL"}},"required":["sourceText","targetLanguage","translationProvider"]},"ApiSingleTranslateResponse":{"type":"object","properties":{"translatedText":{"type":"string"}}},"UpdateTranslationRequestV2":{"type":"object","properties":{"key":{"type":"string","minLength":1},"language":{"type":"string","minLength":1},"text":{"type":"string","maxLength":65535,"minLength":0},"customerId":{"type":"string"},"namespace":{"type":"string"},"reviewStatus":{"type":"string","enum":["REVIEWED","NOT_REVIEWED",""],"oneOf":[{"type":"string"}]}},"required":["key","language","text"]},"UpdateTranslationBulkRequestV2":{"type":"object","properties":{"translations":{"type":"array","items":{"$ref":"#/components/schemas/UpdateTranslationRequestV2"},"maxItems":100,"minItems":0}}},"UpdateTranslationBulkResponseV2":{"type":"object","properties":{"failures":{"type":"array","items":{"$ref":"#/components/schemas/Failure"}}}},"UpdateTranslationKeyRequestV2":{"type":"object","properties":{"key":{"type":"string"},"namespace":{"type":"string"},"description":{"type":"string","maxLength":500,"minLength":0},"codeDescription":{"type":"string","maxLength":500,"minLength":0},"charactersLimit":{"type":"integer","format":"int32"},"deprecated":{"type":"boolean"},"lock":{"type":"boolean"},"tags":{"type":"array","items":{"type":"string"},"maxItems":5,"minItems":0}}},"UpdateTagRequestV1":{"type":"object","properties":{"name":{"type":"string","description":"Tag name","example":"my-feature"},"color":{"type":"string","description":"Tag color","example":"6e56ce"}}},"LanguageUpdateRequestV1":{"type":"object","properties":{"key":{"type":"string","maxLength":20,"minLength":0},"name":{"type":"string","maxLength":200,"minLength":0}}},"CustomerUpdateRequestV1":{"type":"object","properties":{"key":{"type":"string","maxLength":40,"minLength":0},"displayName":{"type":"string","maxLength":32,"minLength":0},"description":{"type":"string","maxLength":255,"minLength":0}}},"DownloadableFile":{"type":"object","properties":{"url":{"type":"string"},"namespace":{"type":"string"},"language":{"type":"string"}}},"GetExportTranslationsV4":{"type":"object","properties":{"files":{"type":"array","items":{"$ref":"#/components/schemas/DownloadableFile"}}}},"ApiTranslationResponseV2":{"type":"object","properties":{"key":{"type":"string","example":"hello_world"},"namespace":{"type":"string","example":"common"},"language":{"type":"string","example":"en_EN"},"customerId":{"type":"string","example":"acme"},"text":{"type":"string","example":"Hello world"},"reviewStatus":{"type":"string","example":"NOT_REVIEWED"},"lastModifiedAt":{"type":"string","example":"2021-01-01T00:00:00.000Z"}}},"PageDetails":{"type":"object","properties":{"totalElements":{"type":"integer","format":"int64"},"totalPages":{"type":"integer","format":"int32"},"currentPage":{"type":"integer","format":"int32"},"hasNext":{"type":"boolean"},"first":{"type":"boolean"},"last":{"type":"boolean"}}},"PagedTranslationsV2RestResponse":{"type":"object","properties":{"msg":{"type":"string","description":"Message","example":"OK"},"status":{"type":"integer","format":"int32","description":"Status code","example":200},"data":{"type":"array","description":"Response data","items":{"$ref":"#/components/schemas/ApiTranslationResponseV2"}},"pageDetails":{"$ref":"#/components/schemas/PageDetails","description":"Page details"}}},"PageMetadata":{"type":"object","properties":{"size":{"type":"integer","format":"int64"},"number":{"type":"integer","format":"int64"},"totalElements":{"type":"integer","format":"int64"},"totalPages":{"type":"integer","format":"int64"}}},"PagedModelApiTranslationResponseV2":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/ApiTranslationResponseV2"}},"page":{"$ref":"#/components/schemas/PageMetadata"}}},"TranslationKeyAllResponseV2":{"type":"object","properties":{"id":{"type":"string"},"key":{"type":"string"},"namespace":{"type":"string"}}},"ApiCustomerDetailsV2":{"type":"object","properties":{"key":{"type":"string"}}},"ApiLanguageDetailsV2":{"type":"object","properties":{"key":{"type":"string"},"name":{"type":"string"},"isDefault":{"type":"boolean"},"translationProvider":{"type":"string","enum":["GOOGLE_TRANSLATE","DEEPL","OPEN_AI","OPEN_ROUTER","CUSTOM_AI","EXTERNAL_API","SYSTRAN","TRANSLATION_MEMORY","DISABLED"]},"providerLanguage":{"type":"string"}}},"ApiNamespaceDetailsV2":{"type":"object","properties":{"name":{"type":"string"}}},"ApiProjectDetailsItemV2":{"type":"object","properties":{"name":{"type":"string"},"projectToken":{"type":"string"},"apiKey":{"type":"string"},"languages":{"type":"array","items":{"$ref":"#/components/schemas/ApiLanguageDetailsV2"}},"customers":{"type":"array","items":{"$ref":"#/components/schemas/ApiCustomerDetailsV2"}},"namespaces":{"type":"array","items":{"$ref":"#/components/schemas/ApiNamespaceDetailsV2"}},"keys":{"type":"integer","format":"int32"},"unpublishedChanges":{"type":"integer","format":"int32"},"translatedPercentage":{"type":"number","format":"double"},"lastActivityAt":{"type":"string"},"lastEditedAt":{"type":"string"},"createdAt":{"type":"string"},"translatedKeysByLanguage":{"type":"object","additionalProperties":{"type":"integer","format":"int32"}}}},"ApiEnvironmentDetailsV2":{"type":"object","properties":{"name":{"type":"string"},"key":{"type":"string"},"color":{"type":"string"}}},"ApiHostingResourceV2":{"type":"object","properties":{"path":{"type":"string"},"namespace":{"type":"string"},"language":{"type":"string"},"customerId":{"type":"string"},"key":{"type":"string"}}},"ApiProjectDetailsV2":{"type":"object","properties":{"name":{"type":"string"},"projectToken":{"type":"string"},"languages":{"type":"array","items":{"$ref":"#/components/schemas/ApiLanguageDetailsV2"}},"customers":{"type":"array","items":{"$ref":"#/components/schemas/ApiCustomerDetailsV2"}},"namespaces":{"type":"array","items":{"$ref":"#/components/schemas/ApiNamespaceDetailsV2"}},"environments":{"type":"array","items":{"$ref":"#/components/schemas/ApiEnvironmentDetailsV2"}},"keys":{"type":"integer","format":"int32"},"unpublishedChanges":{"type":"integer","format":"int32"},"translatedPercentage":{"type":"number","format":"double"},"lastActivityAt":{"type":"string"},"lastEditedAt":{"type":"string"},"createdAt":{"type":"string"},"translatedKeysByLanguage":{"type":"object","additionalProperties":{"type":"integer","format":"int32"}},"hostingResources":{"type":"array","items":{"$ref":"#/components/schemas/ApiHostingResourceV2"}}}},"JobItemV2":{"type":"object","properties":{"jobId":{"type":"string"},"progress":{"type":"number","format":"float"},"status":{"type":"string"},"type":{"type":"string"},"message":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"metadata":{"type":"object","additionalProperties":{"type":"string"}}}},"CdnEnvironmentApiDetails":{"type":"object","properties":{"key":{"type":"string"},"name":{"type":"string"},"color":{"type":"string"},"type":{"type":"string","enum":["DEFAULT","CUSTOM"]}}},"ApiEnvironmentStatusResource":{"type":"object","properties":{"link":{"type":"string","example":"{{projectToken}}/{{environment}}/_index"},"customer":{"type":"string","example":"acme"},"language":{"type":"string","example":"en"},"namespace":{"type":"string","example":"common"},"size":{"type":"integer","format":"int32","example":89571}}},"ApiEnvironmentStatusResponse":{"type":"object","properties":{"numberOfKeys":{"type":"integer","format":"int32","example":2137},"numberOfLanguages":{"type":"integer","format":"int32","example":5},"numberOfNonEmptyTranslations":{"type":"integer","format":"int32","example":642},"createdAt":{"type":"string","format":"date-time","example":"2021-01-01T00:00:00.000Z"},"labels":{"type":"array","example":["mobile","v1.0"],"items":{"type":"string"}},"resources":{"type":"array","items":{"$ref":"#/components/schemas/ApiEnvironmentStatusResource"}}}},"PagedTranslationKeysV2RestResponse":{"type":"object","properties":{"msg":{"type":"string","description":"Message","example":"OK"},"status":{"type":"integer","format":"int32","description":"Status code","example":200},"data":{"type":"array","description":"Response data","items":{"$ref":"#/components/schemas/TranslationKeyResponseV2"}},"pageDetails":{"$ref":"#/components/schemas/PageDetails","description":"Page details"}}},"TranslationKeyResponseV2":{"type":"object","properties":{"key":{"type":"string"},"namespace":{"type":"string"},"description":{"type":"string"},"codeDescription":{"type":"string"},"createdAt":{"type":"string"},"createdSource":{"type":"string"},"lastSeenAt":{"type":"string"},"lastSeenSource":{"type":"string"},"charactersLimit":{"type":"integer","format":"int32"}}},"TranslationKeyAllResponseV1":{"type":"object","properties":{"key":{"type":"string"},"namespace":{"type":"string"}}},"Tag":{"type":"object","properties":{"name":{"type":"string"},"color":{"type":"string"}}},"TranslationKeyDetailsResponseV2":{"type":"object","properties":{"key":{"type":"string"},"namespace":{"type":"string"},"description":{"type":"string"},"codeDescription":{"type":"string"},"createdAt":{"type":"string"},"createdSource":{"type":"string"},"lastSeenAt":{"type":"string"},"lastSeenSource":{"type":"string"},"charactersLimit":{"type":"integer","format":"int32"},"tags":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}},"ListTagResponseV1":{"type":"object","properties":{"name":{"type":"string"},"color":{"type":"string"},"usageCount":{"type":"integer","format":"int32"}}},"ApiProjectContributor":{"type":"object","properties":{"name":{"type":"string"},"email":{"type":"string"},"status":{"type":"string","enum":["INVITED","ACCEPTED"]},"role":{"type":"string","enum":["OWNER","ADMIN","TRANSLATOR"]},"permissions":{"type":"array","items":{"$ref":"#/components/schemas/Permission"}},"assignedLanguages":{"type":"array","items":{"$ref":"#/components/schemas/AssignedLanguage"}},"defaultLanguageAccess":{"type":"string","enum":["WRITE_READ","READ","HIDDEN"]},"assignedTags":{"type":"array","items":{"$ref":"#/components/schemas/AssignedTag"}},"defaultTagAccess":{"type":"string","enum":["WRITE_READ","HIDDEN"]},"assignedCustomers":{"type":"array","items":{"$ref":"#/components/schemas/AssignedCustomer"}},"defaultCustomerAccess":{"type":"string","enum":["WRITE_READ","HIDDEN"]}}},"FileFormatItem":{"type":"object","properties":{"value":{"type":"string"},"multiLanguageSupport":{"type":"boolean"},"deprecated":{"type":"boolean"},"beta":{"type":"boolean"}}},"FileFormatsResponse":{"type":"object","properties":{"fileFormats":{"type":"array","items":{"$ref":"#/components/schemas/FileFormatItem"}}}},"ActivityEnvironmentDetails":{"type":"object","properties":{"key":{"type":"string"},"name":{"type":"string"},"color":{"type":"string"}}},"ActivityItemResponseV1":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string","enum":["IMPORT","REVERT","EXPORT","CHANGE","PUBLICATION","ENVIRONMENT_PUBLICATION","AUTO_TRANSLATION_SUCCESS","AUTO_TRANSLATION_FAILED","TEST","SNAPSHOT_CREATE","SNAPSHOT_RESTORE","PROJECT_PURGE","BACKUP_CREATE","BACKUP_RESTORE","SUGGESTION_CREATE","COMMENT_CREATE"]},"source":{"type":"string","enum":["WEB_EDITOR","FILE_IMPORT","CLI","API","WEB","AUTOMATION","AI","FIGMA","INTELLIJ","VSCODE","GITHUB","SHOPIFY","WEBFLOW"]},"user":{"type":"string"},"numberOfKeys":{"type":"integer","format":"int32"},"numberOfLanguages":{"type":"integer","format":"int32"},"numberOfChanges":{"type":"integer","format":"int32"},"running":{"type":"boolean"},"environment":{"$ref":"#/components/schemas/ActivityEnvironmentDetails"},"createdAt":{"type":"string","format":"date-time"}}},"ContentChangeRequest":{"type":"object","properties":{"action":{"type":"string","enum":["CREATE_KEY","DELETE_KEY","CHANGE_KEY","CHANGE_TRANSLATION","CHANGE_REVIEW_STATUS","CREATE_LANGUAGE","CHANGE_LANGUAGE","DELETE_LANGUAGE","CREATE_CUSTOMER","CHANGE_CUSTOMER","DELETE_CUSTOMER"]},"key":{"type":"string"},"namespace":{"type":"string"},"oldNamespace":{"type":"string"},"oldKey":{"type":"string"},"newNamespace":{"type":"string"},"newKey":{"type":"string"},"word":{"type":"string"},"language":{"type":"string"},"overrideKey":{"type":"string"},"reviewStatus":{"type":"string","enum":["NOT_REVIEWED","REVIEWED","REVIEWED","NOT_REVIEWED",""]},"deprecatedAt":{"type":"string","format":"date-time"},"occurred":{"type":"string","format":"date-time"},"autoTranslatedBy":{"type":"string"}}},"DeleteTranslationKeyBulkRequestV2":{"type":"object","properties":{"translationKeys":{"type":"array","items":{"$ref":"#/components/schemas/DeleteTranslationKeyRequestV2"},"maxItems":100,"minItems":0}}},"DeleteTranslationKeyRequestV2":{"type":"object","properties":{"key":{"type":"string","maxLength":500,"minLength":0},"namespace":{"type":"string","maxLength":128,"minLength":0}},"required":["key"]},"DeleteTranslationKeyBulkResponseV2":{"type":"object","properties":{"failures":{"type":"array","items":{"$ref":"#/components/schemas/Failure"}}}},"ApiProjectContributorRemoveRequest":{"type":"object","properties":{"email":{"type":"string","format":"email","minLength":1}},"required":["email"]}},"securitySchemes":{"Personal Access Token":{"type":"apiKey","description":"Personal Access Token","name":"Authorization","in":"header"},"Project API Key":{"type":"apiKey","description":"Project API Key","name":"X-SimpleLocalize-Token","in":"header"}}}}