openapi: 3.0.1 info: contact: email: support@transifex.com name: Transifex Support description: "
\n
\n\n# Introduction\n\nThis API is based on **{json:api}**.\n\n{json:api} is a specification that follows shared conventions and standards. This specification enables API discoverability and partial\nself-descriptiveness through conventions. The Json Api specification exposes resources and their relationships representations with\nunique uris and all CRUD operations are performed on those endpoints. With it's simplified approach it assists the API uniformity.\n\nRead more: https://jsonapi.org/\n\nAdditionally, this API is defined using OpenAPI (ex Swagger). This means that you can easily:\n* Generate clients in your preferred: https://swagger.io/tools/swagger-codegen/\n* Download the specification file (see above) and use it in clients like Postman etc\n\n
\n
\n\n# Pagination\n\nAll list endpoints include pagination to guarantee performant responses. Those endpoints will return `next` and `previous` links in the\nresponse payload (`links` section). The client does not have to construct any pagination specific URLs or headers, just follow those\nlinks.\n\nPage size is fixed to 150 items per page.\n\n
\n
\n\n# Content Negotiation\n\nThe basic media type for the API is `application/vnd.api+json`. If you want to execute a request that includes data (`POST`, `PATCH`, `DELETE`)\nyou should include this media type in the `Content-Type` header. The only case where a different `Content-Type` header will be accepted is for\nendpoints that can accept file like objects where the media type used should be `multipart/form-data`.\n\nThe base media type this API responds is `application/vnd.api+json`. To retrieve the data in this media type you should include it in the `Accept`\nheader. The only case where the server will return another media type is for endpoint that return file like objects.\nIn this case the media type used should be `*/*` and the server will prioritize the negotiation to the media type dictated from the file.\nNote that `application/vnd.api+json` will be also available for accept header in these cases and will return a JSON serialized representation of the file.\n\nRead more here: https://jsonapi.org/format/#content-negotiation\n\n# File Uploads\n\nThere are three different methods for uploading file content to Transifex:\n* Using Content-Type `application/vnd.api+json` the content must\n be JSON serializable.\n - For content that is directly JSON serializable you can dump the content\n of the file directly and set the `content_encoding` attribute to `text`.\n - For any content, even if it's not JSON serializable (eg .xlsx, .idml or .docx file extensions),\n you can encode the file using the `base64` encoding and set the `content_encoding` attribute to `base64`.\n* Using Content-Type `multipart/form-data` the content can be any raw file, and can\n be send without further processing.\n\n# Asynchronous Processing\n\nAsynchronous operations are triggered via a POST request. The response status in such cases is 202 Accepted, with a link in the Content-Location header.\nTo check the status of the operation, a client can send a request to the location given earlier.\nAn optional `callback_url` can be provided when the asynchronous operation is triggered. If such url is provided, upon completion\na HTTP POST request is executed containing all information required to identify the specific operation:\n\nExample request:\n```\nPOST callback_url HTTP/1.1\nContent-Type: application/json\n\n{\n \"data\": {\n \"type\": resource_strings_async_downloads\",\n \"id\": \"xxxxxxxxx\",\n \"attributes\": {\n \"location\": \"https://rest.api.transifex.com/resource_strings_async_downloads/xxxxxxxxx\",\n \"status\": \"succeeded\"\n }\n }\n}\n```\n\n# Restrictions\n\nThe following Plan based restrictions apply:\n* [Activity Reports](#tag/Activity-Reports) are available to Premium and up\n* [XLIFF export](#tag/Resource-Translations/paths/~1resource_translations_async_downloads/post) is available to Premium and up.\n* [Screenshots](#tag/Context-Screenshots) are available to Premium and up\n\n# Rate Limit\n\nTo maintain optimal performance and availability of the API, we limit the request rate to 500\nrequests/min or 30,000 requests / 5 minutes / IP. Polling endpoints like\n`resource_translations_async_downloads/{resource_translations_async_download_id}` and\n`resource_strings_async_downloads/{resource_strings_async_download_id}` have a rate limit of 1,200 requests/min.\nOnce past the respective limit, requests will be throttled and you will get a 429 Throttled response.\n\n\nExample response:\n```\n{\n \"errors\": [\n {\n \"code\": \"Throttled\",\n \"detail\": \"Request was throttled. Expected available in 60 seconds.\",\n \"status\": \"429\",\n \"title\": \"Throttled\"\n }\n ]\n}\n```\n\n# Authentication\n\n" title: Transifex Activity Reports Resources API version: '3.0' x-logo: altText: Transifex logo backgroundColor: '#FFFFFF' url: transifex-blue-logo.svg servers: - url: https://rest.api.transifex.com security: - bearerAuth: [] tags: - description: Represents a resource that holds source strings. Resources belong to a specific project in Transifex. name: Resources paths: /resource_async_merges: post: description: 'Merge git based branch ' requestBody: content: application/vnd.api+json: schema: additionalProperties: false properties: data: additionalProperties: false description: Create resource merge. properties: attributes: additionalProperties: false description: Resource strings async download attributes properties: callback_url: default: null description: 'The url that will be called when the processing is completed. For more details about callback_url you can refer to [Asynchronous Processing](#section/Asynchronous-Processing) section ' format: uri nullable: true type: string conflict_resolution: description: Conflict resolution option. enum: - USE_HEAD - USE_BASE example: USE_HEAD type: string force: default: false example: false type: boolean required: - conflict_resolution relationships: additionalProperties: false properties: resource: additionalProperties: false description: The resource that will be merged to its parent. properties: data: additionalProperties: false description: Resource data container. properties: id: description: Resource identifier. example: o:organization_slug:p:project_slug:r:resource_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+:r:[a-zA-Z0-9_-]+$ type: string type: enum: - resources type: string required: - type - id type: object required: - data type: object required: - resource type: object type: enum: - resource_async_merges type: string required: - type - attributes - relationships type: object required: - data type: object required: true responses: '202': content: application/vnd.api+json: schema: additionalProperties: false properties: data: additionalProperties: false properties: attributes: additionalProperties: false properties: conflict_resolution: enum: - USE_HEAD - USE_BASE example: USE_HEAD type: string date_completed: example: XXXX-XX-XXTXX:XX:XXZ format: date-time nullable: true type: string date_created: example: XXXX-XX-XXTXX:XX:XXZ format: date-time type: string status: enum: - CREATED - CHANGES_CREATED - COMPLETED - HEAD_DELETED example: CREATED type: string required: - status - conflict_resolution - date_created - date_completed type: object id: example: 4abfc726-6a27-4c33-9d99-e5254c8df748 pattern: ^([0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$ type: string links: additionalProperties: false properties: self: example: /resource_strings_async_downloads/4abfc726-6a27-4c33-9d99-e5254c8df748 type: string required: - self type: object relationships: additionalProperties: false properties: base: additionalProperties: false properties: data: additionalProperties: false description: Resource data container. properties: id: description: Resource identifier. example: o:organization_slug:p:project_slug:r:resource_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+:r:[a-zA-Z0-9_-]+$ type: string type: enum: - resources type: string required: - type - id type: object required: - data type: object head: additionalProperties: false properties: data: additionalProperties: false description: Resource data container. properties: id: description: Resource identifier. example: o:organization_slug:p:project_slug:r:resource_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+:r:[a-zA-Z0-9_-]+$ type: string type: enum: - resources type: string required: - type - id type: object required: - data type: object required: - base - head type: object type: enum: - resource_async_merges type: string required: - type - id - attributes - relationships - links type: object required: - data type: object description: Accepted. headers: Content-Location: description: The location of the merge resource job. required: true schema: type: string '400': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: invalid type: string detail: example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens type: string source: anyOf: - properties: pointer: example: /data/attributes/name type: string - properties: parameter: example: ?filter[foo] type: string status: example: '400' type: string title: example: Field `name` is invalid type: string type: object type: array type: object description: Invalid '401': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: unauthorized type: string detail: example: Please verify your credentials type: string status: example: '401' type: string title: example: Unauthorized type: string type: object type: array type: object description: Unauthorized '403': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: true properties: code: example: forbidden type: string detail: example: You do not have permissions to perform this action type: string status: example: '403' type: string title: example: Operation not allowed type: string type: object type: array type: object description: Forbidden '404': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: properties: code: example: not found type: string detail: example: Object not found. It may have been deleted or not been created yet type: string status: example: '404' type: string title: example: Object not found type: string type: object type: array type: object description: Not found '409': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: conflict type: string detail: example: Value `some_field_value` already exists type: string source: additionalProperties: false properties: pointer: example: /data/attributes/some_field type: string type: object status: example: '409' type: string title: example: Field `some_field` conflicted type: string type: object type: array type: object description: Conflict '429': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: Throttled type: string detail: example: Request was throttled. Expected available in 60 seconds. type: string status: example: '429' type: string title: example: Throttled type: string type: object type: array type: object description: Throttled '500': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: server error type: string detail: example: Something went wrong, please try again type: string status: example: '500' type: string title: example: Something went wrong type: string type: object type: array type: object description: Internal Error security: - bearerAuth: [] summary: Create new resources merge tags: - Resources /resource_async_merges_{resource_async_merge_id}: parameters: - description: Format of the resource_async_merge_id should be a UUID. in: path name: resource_async_merge_id required: true schema: example: 4abfc726-6a27-4c33-9d99-e5254c8df748 pattern: ^([0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$ type: string get: description: "With this endpoint, you can inquire about the status of a resource merge job.\n\n- If the value of the 'status' attribute is 'pending' or 'processing', you\n should check this endpoint again later.\n- If the 'status' is 'failed', the merge has failed to complete.\n- In case the upload job has been successful, you will receive a \"200\"\n" responses: '200': content: application/vnd.api+json: schema: additionalProperties: false properties: data: additionalProperties: false properties: attributes: additionalProperties: false properties: conflict_resolution: enum: - USE_HEAD - USE_BASE example: USE_HEAD type: string date_completed: example: XXXX-XX-XXTXX:XX:XXZ format: date-time nullable: true type: string date_created: example: XXXX-XX-XXTXX:XX:XXZ format: date-time type: string status: enum: - CREATED - CHANGES_CREATED - COMPLETED - HEAD_DELETED example: CREATED type: string required: - status - conflict_resolution - date_created - date_completed type: object id: example: 4abfc726-6a27-4c33-9d99-e5254c8df748 pattern: ^([0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$ type: string links: additionalProperties: false properties: self: example: /resource_strings_async_downloads/4abfc726-6a27-4c33-9d99-e5254c8df748 type: string required: - self type: object relationships: additionalProperties: false properties: base: additionalProperties: false properties: data: additionalProperties: false description: Resource data container. properties: id: description: Resource identifier. example: o:organization_slug:p:project_slug:r:resource_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+:r:[a-zA-Z0-9_-]+$ type: string type: enum: - resources type: string required: - type - id type: object required: - data type: object head: additionalProperties: false properties: data: additionalProperties: false description: Resource data container. properties: id: description: Resource identifier. example: o:organization_slug:p:project_slug:r:resource_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+:r:[a-zA-Z0-9_-]+$ type: string type: enum: - resources type: string required: - type - id type: object required: - data type: object required: - base - head type: object type: enum: - resource_async_merges type: string required: - type - id - attributes - relationships - links type: object required: - data type: object description: Successful response. '401': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: unauthorized type: string detail: example: Please verify your credentials type: string status: example: '401' type: string title: example: Unauthorized type: string type: object type: array type: object description: Unauthorized '403': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: true properties: code: example: forbidden type: string detail: example: You do not have permissions to perform this action type: string status: example: '403' type: string title: example: Operation not allowed type: string type: object type: array type: object description: Forbidden '404': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: properties: code: example: not found type: string detail: example: Object not found. It may have been deleted or not been created yet type: string status: example: '404' type: string title: example: Object not found type: string type: object type: array type: object description: Not found '429': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: Throttled type: string detail: example: Request was throttled. Expected available in 60 seconds. type: string status: example: '429' type: string title: example: Throttled type: string type: object type: array type: object description: Throttled '500': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: server error type: string detail: example: Something went wrong, please try again type: string status: example: '500' type: string title: example: Something went wrong type: string type: object type: array type: object description: Internal Error security: - bearerAuth: [] summary: Get resource merge status tags: - Resources /resources: get: description: Get a list of all resources (in a specific project). parameters: - description: Filter results by a project in: query name: filter[project] required: true schema: description: Project identifier. example: o:organization_slug:p:project_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$ type: string - description: 'The cursor used for pagination. The value of the cursor must be retrieved from pagination links included in previous responses; you should not attempt to write them on your own. ' in: query name: page[cursor] schema: type: string - in: query name: filter[slug] required: false schema: pattern: ^[a-zA-Z0-9._-]+$ type: string - in: query name: filter[name] required: false schema: type: string responses: '200': content: application/vnd.api+json: schema: additionalProperties: false properties: data: description: List of resource objects. items: additionalProperties: false properties: attributes: additionalProperties: false properties: accept_translations: description: Whether resource should accept translations or not example: true type: boolean categories: description: List of categories to associate similar resources example: - category_1 - category_2 items: type: string type: array datetime_created: example: XXXX-XX-XXTXX:XX:XXZ format: date-time type: string datetime_modified: example: XXXX-XX-XXTXX:XX:XXZ format: date-time type: string i18n_options: description: Any options that determine how the resource will be parsed and compiled example: allow_duplicate_strings: true nullable: true properties: allow_duplicate_strings: description: If true, identical strings found in the resource will be parsed as separate strings; otherwise, identical strings will be considered as instances of the same string. Available in "HTML" i18n type resources. type: boolean type: object i18n_version: description: File format type version. example: 1 type: number mp4_url: description: A (public) url to provide an MP4 video file for subtitles translation example: https://some.host.net/some_mp4_url nullable: true type: string name: description: Name of the resource example: Resource Name type: string ogg_url: description: A (public) url to provide an OGG video file for subtitles translation example: https://some.host.net/some_ogg_url nullable: true type: string priority: enum: - normal - high - urgent example: normal type: string slug: description: Slug of the resource example: Slug Name type: string string_count: description: Number of strings in the resource content. example: 0 type: number webm_url: description: A (public) url to provide a WEMB video file for subtitles translation example: https://some.host.net/some_webm_url nullable: true type: string word_count: description: Number of words in the resource content. example: 0 type: number youtube_url: description: A (public) YouTube url to provide a video file for subtitles translation example: https://www.youtube.com/ nullable: true type: string required: - slug - name - i18n_version - priority - accept_translations - categories - i18n_options - mp4_url - ogg_url - webm_url - youtube_url - string_count - word_count - datetime_created - datetime_modified type: object id: description: Resource identifier. example: o:organization_slug:p:project_slug:r:resource_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+:r:[a-zA-Z0-9_-]+$ type: string links: additionalProperties: false description: Resource links. properties: self: description: Resource details link. example: /resources/o:organization_slug:p:project_slug:r:resource_slug type: string required: - self type: object relationships: additionalProperties: false description: Resource relationships. properties: i18n_format: additionalProperties: false description: I18n format object. properties: data: additionalProperties: false description: I18n Format identifier object. properties: id: example: YML_KEY pattern: ^[A-Z0-9@_-]+$ type: string type: enum: - i18n_formats type: string required: - type - id type: object required: - data type: object project: additionalProperties: false description: Project object. properties: data: additionalProperties: false description: Project data container. properties: id: description: Project identifier. example: o:organization_slug:p:project_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$ type: string type: enum: - projects type: string required: - type - id type: object links: additionalProperties: false description: Project links. properties: related: description: Project details link. example: /projects/o:organization_slug:p:project_slug type: string required: - related type: object required: - links - data type: object required: - project type: object type: enum: - resources type: string required: - type - id - attributes - relationships - links type: object type: array links: additionalProperties: false description: Pagination links. properties: next: description: Resource results cursor link. example: /resources?filter[project]=o:organization_slug:p:project_slug&page[cursor]=XXX nullable: true type: string previous: description: Resource results cursor link. example: /resources?filter[project]=o:organization_slug:p:project_slug&page[cursor]=XXX nullable: true type: string self: description: Resource results cursor link. example: /resources?filter[project]=o:organization_slug:p:project_slug type: string required: - self - next - previous type: object required: - links - data type: object description: List of resources for a given project. '400': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: invalid type: string detail: example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens type: string source: anyOf: - properties: pointer: example: /data/attributes/name type: string - properties: parameter: example: ?filter[foo] type: string status: example: '400' type: string title: example: Field `name` is invalid type: string type: object type: array type: object description: Invalid '401': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: unauthorized type: string detail: example: Please verify your credentials type: string status: example: '401' type: string title: example: Unauthorized type: string type: object type: array type: object description: Unauthorized '403': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: true properties: code: example: forbidden type: string detail: example: You do not have permissions to perform this action type: string status: example: '403' type: string title: example: Operation not allowed type: string type: object type: array type: object description: Forbidden '409': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: conflict type: string detail: example: Value `some_field_value` already exists type: string source: additionalProperties: false properties: pointer: example: /data/attributes/some_field type: string type: object status: example: '409' type: string title: example: Field `some_field` conflicted type: string type: object type: array type: object description: Conflict '500': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: server error type: string detail: example: Something went wrong, please try again type: string status: example: '500' type: string title: example: Something went wrong type: string type: object type: array type: object description: Internal Error security: - bearerAuth: [] summary: List resources tags: - Resources x-released: true post: description: 'Making a POST request to this endpoint creates a resource without content. This step is performed synchronously so you don''t have to verify that resource creation succeeded afterwards. In order to upload content, see the [/resource_strings_async_uploads](#tag/Resource-Strings/paths/~1resource_strings_async_uploads/post) endpoint. ' requestBody: content: application/vnd.api+json: schema: additionalProperties: false properties: data: additionalProperties: false description: Create resource body request details. properties: attributes: additionalProperties: false description: Resource attributes. properties: accept_translations: description: Whether resource should accept translations or not example: true type: boolean categories: description: List of categories to associate similar resources example: - category_1 - category_2 items: type: string type: array i18n_options: description: Any options that determine how the resource will be parsed and compiled example: allow_duplicate_strings: true nullable: true properties: allow_duplicate_strings: description: If true, identical strings found in the resource will be parsed as separate strings; otherwise, identical strings will be considered as instances of the same string. Available in "HTML" i18n type resources. type: boolean type: object mp4_url: description: A (public) url to provide an MP4 video file for subtitles translation example: https://some.host.net/some_mp4_url nullable: true type: string name: description: Name of the resource example: Resource Name type: string ogg_url: description: A (public) url to provide an OGG video file for subtitles translation example: https://some.host.net/some_ogg_url nullable: true type: string priority: enum: - normal - high - urgent example: normal type: string slug: description: Slug of the resource example: Slug Name type: string webm_url: description: A (public) url to provide a WEMB video file for subtitles translation example: https://some.host.net/some_webm_url nullable: true type: string youtube_url: description: A (public) YouTube url to provide a video file for subtitles translation example: https://www.youtube.com/ nullable: true type: string required: - name type: object relationships: additionalProperties: false description: Resource parent relationships. properties: base: additionalProperties: false description: The base `resource` that this `resource` is a branch of. nullable: true properties: data: additionalProperties: false description: Resource data container. properties: id: description: Resource identifier. example: o:organization_slug:p:project_slug:r:resource_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+:r:[a-zA-Z0-9_-]+$ type: string type: enum: - resources type: string required: - type - id type: object type: object i18n_format: additionalProperties: false description: The `i18n_format` of the resource to create. properties: data: additionalProperties: false description: I18n Format identifier object. properties: id: example: YML_KEY pattern: ^[A-Z0-9@_-]+$ type: string type: enum: - i18n_formats type: string required: - type - id type: object required: - data type: object project: additionalProperties: false description: The `project` resource should belong to. properties: data: additionalProperties: false description: Project data container. properties: id: description: Project identifier. example: o:organization_slug:p:project_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$ type: string type: enum: - projects type: string required: - type - id type: object required: - data type: object required: - project - i18n_format type: object type: enum: - resources type: string required: - type - attributes - relationships type: object required: - data type: object required: true responses: '201': content: application/vnd.api+json: schema: additionalProperties: false properties: data: additionalProperties: false properties: attributes: additionalProperties: false properties: accept_translations: description: Whether resource should accept translations or not example: true type: boolean categories: description: List of categories to associate similar resources example: - category_1 - category_2 items: type: string type: array datetime_created: example: XXXX-XX-XXTXX:XX:XXZ format: date-time type: string datetime_modified: example: XXXX-XX-XXTXX:XX:XXZ format: date-time type: string i18n_options: description: Any options that determine how the resource will be parsed and compiled example: allow_duplicate_strings: true nullable: true properties: allow_duplicate_strings: description: If true, identical strings found in the resource will be parsed as separate strings; otherwise, identical strings will be considered as instances of the same string. Available in "HTML" i18n type resources. type: boolean type: object i18n_version: description: File format type version. example: 1 type: number mp4_url: description: A (public) url to provide an MP4 video file for subtitles translation example: https://some.host.net/some_mp4_url nullable: true type: string name: description: Name of the resource example: Resource Name type: string ogg_url: description: A (public) url to provide an OGG video file for subtitles translation example: https://some.host.net/some_ogg_url nullable: true type: string priority: enum: - normal - high - urgent example: normal type: string slug: description: Slug of the resource example: Slug Name type: string string_count: description: Number of strings in the resource content. example: 0 type: number webm_url: description: A (public) url to provide a WEMB video file for subtitles translation example: https://some.host.net/some_webm_url nullable: true type: string word_count: description: Number of words in the resource content. example: 0 type: number youtube_url: description: A (public) YouTube url to provide a video file for subtitles translation example: https://www.youtube.com/ nullable: true type: string required: - slug - name - i18n_version - priority - accept_translations - categories - i18n_options - mp4_url - ogg_url - webm_url - youtube_url - string_count - word_count - datetime_created - datetime_modified type: object id: description: Resource identifier. example: o:organization_slug:p:project_slug:r:resource_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+:r:[a-zA-Z0-9_-]+$ type: string links: additionalProperties: false description: Resource links. properties: self: description: Resource details link. example: /resources/o:organization_slug:p:project_slug:r:resource_slug type: string required: - self type: object relationships: additionalProperties: false description: Resource relationships. properties: i18n_format: additionalProperties: false description: I18n format object. properties: data: additionalProperties: false description: I18n Format identifier object. properties: id: example: YML_KEY pattern: ^[A-Z0-9@_-]+$ type: string type: enum: - i18n_formats type: string required: - type - id type: object required: - data type: object project: additionalProperties: false description: Project object. properties: data: additionalProperties: false description: Project data container. properties: id: description: Project identifier. example: o:organization_slug:p:project_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$ type: string type: enum: - projects type: string required: - type - id type: object links: additionalProperties: false description: Project links. properties: related: description: Project details link. example: /projects/o:organization_slug:p:project_slug type: string required: - related type: object required: - links - data type: object required: - project type: object type: enum: - resources type: string required: - type - id - attributes - relationships - links type: object required: - data type: object description: Created. headers: Location: required: true schema: description: Resource details link. example: /resources/o:organization_slug:p:project_slug:r:resource_slug type: string '400': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: invalid type: string detail: example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens type: string source: anyOf: - properties: pointer: example: /data/attributes/name type: string - properties: parameter: example: ?filter[foo] type: string status: example: '400' type: string title: example: Field `name` is invalid type: string type: object type: array type: object description: Invalid '401': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: unauthorized type: string detail: example: Please verify your credentials type: string status: example: '401' type: string title: example: Unauthorized type: string type: object type: array type: object description: Unauthorized '403': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: true properties: code: example: forbidden type: string detail: example: You do not have permissions to perform this action type: string status: example: '403' type: string title: example: Operation not allowed type: string type: object type: array type: object description: Forbidden '404': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: properties: code: example: not found type: string detail: example: Object not found. It may have been deleted or not been created yet type: string status: example: '404' type: string title: example: Object not found type: string type: object type: array type: object description: Not found '409': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: conflict type: string detail: example: Value `some_field_value` already exists type: string source: additionalProperties: false properties: pointer: example: /data/attributes/some_field type: string type: object status: example: '409' type: string title: example: Field `some_field` conflicted type: string type: object type: array type: object description: Conflict '500': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: server error type: string detail: example: Something went wrong, please try again type: string status: example: '500' type: string title: example: Something went wrong type: string type: object type: array type: object description: Internal Error security: - bearerAuth: [] summary: Create new resource tags: - Resources x-released: true /resources/{resource_id}: parameters: - description: Format of composite id should be `o:organization_slug:p:project_slug:r:resource_slug`. in: path name: resource_id required: true schema: description: Resource identifier. example: o:organization_slug:p:project_slug:r:resource_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+:r:[a-zA-Z0-9_-]+$ type: string delete: description: Delete a resource of a project. responses: '204': description: No Content. '401': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: unauthorized type: string detail: example: Please verify your credentials type: string status: example: '401' type: string title: example: Unauthorized type: string type: object type: array type: object description: Unauthorized '403': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: true properties: code: example: forbidden type: string detail: example: You do not have permissions to perform this action type: string status: example: '403' type: string title: example: Operation not allowed type: string type: object type: array type: object description: Forbidden '404': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: properties: code: example: not found type: string detail: example: Object not found. It may have been deleted or not been created yet type: string status: example: '404' type: string title: example: Object not found type: string type: object type: array type: object description: Not found '500': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: server error type: string detail: example: Something went wrong, please try again type: string status: example: '500' type: string title: example: Something went wrong type: string type: object type: array type: object description: Internal Error security: - bearerAuth: [] summary: Delete resource tags: - Resources x-released: true get: description: Get details of a specific resource. responses: '200': content: application/vnd.api+json: schema: additionalProperties: false properties: data: additionalProperties: false properties: attributes: additionalProperties: false properties: accept_translations: description: Whether resource should accept translations or not example: true type: boolean categories: description: List of categories to associate similar resources example: - category_1 - category_2 items: type: string type: array datetime_created: example: XXXX-XX-XXTXX:XX:XXZ format: date-time type: string datetime_modified: example: XXXX-XX-XXTXX:XX:XXZ format: date-time type: string i18n_options: description: Any options that determine how the resource will be parsed and compiled example: allow_duplicate_strings: true nullable: true properties: allow_duplicate_strings: description: If true, identical strings found in the resource will be parsed as separate strings; otherwise, identical strings will be considered as instances of the same string. Available in "HTML" i18n type resources. type: boolean type: object i18n_version: description: File format type version. example: 1 type: number mp4_url: description: A (public) url to provide an MP4 video file for subtitles translation example: https://some.host.net/some_mp4_url nullable: true type: string name: description: Name of the resource example: Resource Name type: string ogg_url: description: A (public) url to provide an OGG video file for subtitles translation example: https://some.host.net/some_ogg_url nullable: true type: string priority: enum: - normal - high - urgent example: normal type: string slug: description: Slug of the resource example: Slug Name type: string string_count: description: Number of strings in the resource content. example: 0 type: number webm_url: description: A (public) url to provide a WEMB video file for subtitles translation example: https://some.host.net/some_webm_url nullable: true type: string word_count: description: Number of words in the resource content. example: 0 type: number youtube_url: description: A (public) YouTube url to provide a video file for subtitles translation example: https://www.youtube.com/ nullable: true type: string required: - slug - name - i18n_version - priority - accept_translations - categories - i18n_options - mp4_url - ogg_url - webm_url - youtube_url - string_count - word_count - datetime_created - datetime_modified type: object id: description: Resource identifier. example: o:organization_slug:p:project_slug:r:resource_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+:r:[a-zA-Z0-9_-]+$ type: string links: additionalProperties: false description: Resource links. properties: self: description: Resource details link. example: /resources/o:organization_slug:p:project_slug:r:resource_slug type: string required: - self type: object relationships: additionalProperties: false description: Resource relationships. properties: i18n_format: additionalProperties: false description: I18n format object. properties: data: additionalProperties: false description: I18n Format identifier object. properties: id: example: YML_KEY pattern: ^[A-Z0-9@_-]+$ type: string type: enum: - i18n_formats type: string required: - type - id type: object required: - data type: object project: additionalProperties: false description: Project object. properties: data: additionalProperties: false description: Project data container. properties: id: description: Project identifier. example: o:organization_slug:p:project_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$ type: string type: enum: - projects type: string required: - type - id type: object links: additionalProperties: false description: Project links. properties: related: description: Project details link. example: /projects/o:organization_slug:p:project_slug type: string required: - related type: object required: - links - data type: object required: - project type: object type: enum: - resources type: string required: - type - id - attributes - relationships - links type: object required: - data type: object description: Successful Response. '401': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: unauthorized type: string detail: example: Please verify your credentials type: string status: example: '401' type: string title: example: Unauthorized type: string type: object type: array type: object description: Unauthorized '403': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: true properties: code: example: forbidden type: string detail: example: You do not have permissions to perform this action type: string status: example: '403' type: string title: example: Operation not allowed type: string type: object type: array type: object description: Forbidden '404': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: properties: code: example: not found type: string detail: example: Object not found. It may have been deleted or not been created yet type: string status: example: '404' type: string title: example: Object not found type: string type: object type: array type: object description: Not found '500': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: server error type: string detail: example: Something went wrong, please try again type: string status: example: '500' type: string title: example: Something went wrong type: string type: object type: array type: object description: Internal Error security: - bearerAuth: [] summary: Get resource details tags: - Resources x-released: true patch: description: Update details of a resource. requestBody: content: application/vnd.api+json: schema: additionalProperties: false properties: data: additionalProperties: false description: Update resource body request details. properties: attributes: additionalProperties: false description: Resource multable attributes minProperties: 1 properties: accept_translations: description: Whether resource should accept translations or not example: true type: boolean categories: description: List of categories to associate similar resources example: - category_1 - category_2 items: type: string type: array mp4_url: description: A (public) url to provide an MP4 video file for subtitles translation example: https://some.host.net/some_mp4_url nullable: true type: string name: description: Name of the resource example: Resource Name type: string ogg_url: description: A (public) url to provide an OGG video file for subtitles translation example: https://some.host.net/some_ogg_url nullable: true type: string priority: enum: - normal - high - urgent example: normal type: string webm_url: description: A (public) url to provide a WEMB video file for subtitles translation example: https://some.host.net/some_webm_url nullable: true type: string youtube_url: description: A (public) YouTube url to provide a video file for subtitles translation example: https://www.youtube.com/ nullable: true type: string type: object id: description: Resource identifier. example: o:organization_slug:p:project_slug:r:resource_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+:r:[a-zA-Z0-9_-]+$ type: string relationships: additionalProperties: false description: Resource modifiable relationships. properties: base: additionalProperties: false description: The base `resource` that this `resource` is a branch of. nullable: true properties: data: additionalProperties: false description: Resource data container. properties: id: description: Resource identifier. example: o:organization_slug:p:project_slug:r:resource_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+:r:[a-zA-Z0-9_-]+$ type: string type: enum: - resources type: string required: - type - id type: object type: object type: object type: enum: - resources type: string required: - type - id type: object required: - data type: object required: true responses: '200': content: application/vnd.api+json: schema: additionalProperties: false properties: attributes: additionalProperties: false properties: accept_translations: description: Whether resource should accept translations or not example: true type: boolean categories: description: List of categories to associate similar resources example: - category_1 - category_2 items: type: string type: array datetime_created: example: XXXX-XX-XXTXX:XX:XXZ format: date-time type: string datetime_modified: example: XXXX-XX-XXTXX:XX:XXZ format: date-time type: string i18n_options: description: Any options that determine how the resource will be parsed and compiled example: allow_duplicate_strings: true nullable: true properties: allow_duplicate_strings: description: If true, identical strings found in the resource will be parsed as separate strings; otherwise, identical strings will be considered as instances of the same string. Available in "HTML" i18n type resources. type: boolean type: object i18n_version: description: File format type version. example: 1 type: number mp4_url: description: A (public) url to provide an MP4 video file for subtitles translation example: https://some.host.net/some_mp4_url nullable: true type: string name: description: Name of the resource example: Resource Name type: string ogg_url: description: A (public) url to provide an OGG video file for subtitles translation example: https://some.host.net/some_ogg_url nullable: true type: string priority: enum: - normal - high - urgent example: normal type: string slug: description: Slug of the resource example: Slug Name type: string string_count: description: Number of strings in the resource content. example: 0 type: number webm_url: description: A (public) url to provide a WEMB video file for subtitles translation example: https://some.host.net/some_webm_url nullable: true type: string word_count: description: Number of words in the resource content. example: 0 type: number youtube_url: description: A (public) YouTube url to provide a video file for subtitles translation example: https://www.youtube.com/ nullable: true type: string required: - slug - name - i18n_version - priority - accept_translations - categories - i18n_options - mp4_url - ogg_url - webm_url - youtube_url - string_count - word_count - datetime_created - datetime_modified type: object id: description: Resource identifier. example: o:organization_slug:p:project_slug:r:resource_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+:r:[a-zA-Z0-9_-]+$ type: string links: additionalProperties: false description: Resource links. properties: self: description: Resource details link. example: /resources/o:organization_slug:p:project_slug:r:resource_slug type: string required: - self type: object relationships: additionalProperties: false description: Resource relationships. properties: i18n_format: additionalProperties: false description: I18n format object. properties: data: additionalProperties: false description: I18n Format identifier object. properties: id: example: YML_KEY pattern: ^[A-Z0-9@_-]+$ type: string type: enum: - i18n_formats type: string required: - type - id type: object required: - data type: object project: additionalProperties: false description: Project object. properties: data: additionalProperties: false description: Project data container. properties: id: description: Project identifier. example: o:organization_slug:p:project_slug pattern: ^o:[a-zA-Z0-9._-]+:p:[a-zA-Z0-9_-]+$ type: string type: enum: - projects type: string required: - type - id type: object links: additionalProperties: false description: Project links. properties: related: description: Project details link. example: /projects/o:organization_slug:p:project_slug type: string required: - related type: object required: - links - data type: object required: - project type: object type: enum: - resources type: string required: - type - id - attributes - relationships - links type: object description: Successful Response. '400': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: invalid type: string detail: example: Enter a valid `name` consisting of Unicode letters, numbers, underscores, or hyphens type: string source: anyOf: - properties: pointer: example: /data/attributes/name type: string - properties: parameter: example: ?filter[foo] type: string status: example: '400' type: string title: example: Field `name` is invalid type: string type: object type: array type: object description: Invalid '401': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: unauthorized type: string detail: example: Please verify your credentials type: string status: example: '401' type: string title: example: Unauthorized type: string type: object type: array type: object description: Unauthorized '403': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: true properties: code: example: forbidden type: string detail: example: You do not have permissions to perform this action type: string status: example: '403' type: string title: example: Operation not allowed type: string type: object type: array type: object description: Forbidden '404': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: properties: code: example: not found type: string detail: example: Object not found. It may have been deleted or not been created yet type: string status: example: '404' type: string title: example: Object not found type: string type: object type: array type: object description: Not found '409': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: conflict type: string detail: example: Value `some_field_value` already exists type: string source: additionalProperties: false properties: pointer: example: /data/attributes/some_field type: string type: object status: example: '409' type: string title: example: Field `some_field` conflicted type: string type: object type: array type: object description: Conflict '500': content: application/vnd.api+json: schema: additionalProperties: false properties: errors: items: additionalProperties: false properties: code: example: server error type: string detail: example: Something went wrong, please try again type: string status: example: '500' type: string title: example: Something went wrong type: string type: object type: array type: object description: Internal Error security: - bearerAuth: [] summary: Update resource tags: - Resources x-released: true components: securitySchemes: bearerAuth: description: 'To use the API you need to authenticate your requests using Token Authentication. Specifically, you need to * Acquire an authentication token from the Transifex (under user settings) * Uses the `Bearer` keyword and prepend the token when passing the header. For example, if the authentication token is `1/0b4e75552e481aeae813aebad53f3de3fcc67ccd`, then the HTTP header should look like this: `Authorization: Bearer 1/0b4e75552e481aeae813aebad53f3de3fcc67ccd` To create an API token: 1. Head to your User Settings by going to the main navigation, and clicking on your profile image in the top right corner. 2. In the left menu, click on API token. 3. Click Generate a token. Once you''ve generated a token, you can edit its name so it''s easier to remember where you use the token. To keep your API token secure, we''ll only show it once, so please be sure to save it somewhere secure. In case you lose your API token, you can regenerate a new one at any time. However, when you regenerate a new token, you''ll need to update your applications and replace the old token with the new one. ' scheme: bearer type: http