phrase 4.26.0 → 4.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -0
  3. data/README.md +14 -3
  4. data/docs/CheckIssue.md +33 -0
  5. data/docs/ChecksApi.md +146 -0
  6. data/docs/JobCreateParameters.md +1 -1
  7. data/docs/KeyCreateParameters.md +1 -1
  8. data/docs/KeyUpdateParameters.md +1 -1
  9. data/docs/Locale.md +6 -0
  10. data/docs/LocaleCreateParameters.md +2 -0
  11. data/docs/LocaleDetails.md +6 -0
  12. data/docs/LocaleUpdateParameters.md +2 -0
  13. data/docs/MachineTranslationApi.md +263 -0
  14. data/docs/MachineTranslationLocaleProviderMapping.md +21 -0
  15. data/docs/MachineTranslationLocaleProviderMappingsCreateParameters.md +21 -0
  16. data/docs/MachineTranslationSettings.md +23 -0
  17. data/docs/MachineTranslationSettingsUpdateParameters.md +17 -0
  18. data/docs/MemberUpdateParameters.md +2 -2
  19. data/docs/MembersApi.md +1 -1
  20. data/docs/ProjectCreateParameters.md +9 -3
  21. data/docs/ProjectDetails.md +5 -1
  22. data/docs/ProjectUpdateParameters.md +9 -3
  23. data/docs/ProjectsApi.md +1 -1
  24. data/docs/ScreenshotUpdateParameters.md +1 -1
  25. data/docs/SpacesApi.md +3 -1
  26. data/docs/Upload.md +3 -1
  27. data/docs/UploadsApi.md +4 -4
  28. data/lib/phrase/api/checks_api.rb +174 -0
  29. data/lib/phrase/api/machine_translation_api.rb +302 -0
  30. data/lib/phrase/api/members_api.rb +2 -2
  31. data/lib/phrase/api/projects_api.rb +2 -2
  32. data/lib/phrase/api/spaces_api.rb +3 -0
  33. data/lib/phrase/api/uploads_api.rb +6 -6
  34. data/lib/phrase/models/check_issue.rb +319 -0
  35. data/lib/phrase/models/job_create_parameters.rb +1 -1
  36. data/lib/phrase/models/locale.rb +31 -1
  37. data/lib/phrase/models/locale_create_parameters.rb +11 -1
  38. data/lib/phrase/models/locale_details.rb +31 -1
  39. data/lib/phrase/models/locale_update_parameters.rb +11 -1
  40. data/lib/phrase/models/machine_translation_locale_provider_mapping.rb +217 -0
  41. data/lib/phrase/models/machine_translation_locale_provider_mappings_create_parameters.rb +232 -0
  42. data/lib/phrase/models/machine_translation_settings.rb +230 -0
  43. data/lib/phrase/models/machine_translation_settings_update_parameters.rb +198 -0
  44. data/lib/phrase/models/member_update_parameters.rb +2 -2
  45. data/lib/phrase/models/project_create_parameters.rb +48 -2
  46. data/lib/phrase/models/project_details.rb +53 -1
  47. data/lib/phrase/models/project_update_parameters.rb +48 -2
  48. data/lib/phrase/models/upload.rb +13 -1
  49. data/lib/phrase/version.rb +1 -1
  50. data/lib/phrase.rb +7 -0
  51. data/spec/api/checks_api_spec.rb +56 -0
  52. data/spec/api/machine_translation_api_spec.rb +79 -0
  53. data/spec/api/members_api_spec.rb +1 -1
  54. data/spec/api/projects_api_spec.rb +1 -1
  55. data/spec/api/spaces_api_spec.rb +1 -0
  56. data/spec/models/check_issue_spec.rb +85 -0
  57. data/spec/models/locale_create_parameters_spec.rb +6 -0
  58. data/spec/models/locale_details_spec.rb +18 -0
  59. data/spec/models/locale_spec.rb +18 -0
  60. data/spec/models/locale_update_parameters_spec.rb +6 -0
  61. data/spec/models/machine_translation_locale_provider_mapping_spec.rb +41 -0
  62. data/spec/models/machine_translation_locale_provider_mappings_create_parameters_spec.rb +41 -0
  63. data/spec/models/machine_translation_settings_spec.rb +47 -0
  64. data/spec/models/machine_translation_settings_update_parameters_spec.rb +29 -0
  65. data/spec/models/project_create_parameters_spec.rb +22 -0
  66. data/spec/models/project_details_spec.rb +16 -0
  67. data/spec/models/project_update_parameters_spec.rb +22 -0
  68. data/spec/models/upload_spec.rb +6 -0
  69. metadata +292 -264
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 950c760b4ff662d461dc3b5ee1c2490949e2754537a02c512108ee2802eb6e37
4
- data.tar.gz: 151f613ba922d317f0f492c9a3993cfe98718a68eaa64fe1f43709e9d98c2af0
3
+ metadata.gz: e1279517427a6dccac92b6801d8c6037c17ce70ca827fe5092e3180da61126e9
4
+ data.tar.gz: e53f99f7457a358d506b0c42a53e9658a0007ecd9e804fff947c12f97af37603
5
5
  SHA512:
6
- metadata.gz: 921fc81ad5bf358718d0fe2bd1367c55511636c6291ce39b1298516ebe3f17efaa7ad0bd4361bba43cfc03fdea31147bab33bb88011f8e7517b9d433cc768a3d
7
- data.tar.gz: c4cd0d523a362016d9aec722f94946d75969acf5f112d3a139aa843230d8672c189f193ca618eca790e9721099830ab0430cdeeaf6ba0a138092ce0e68324ab9
6
+ metadata.gz: 131ffb500ebc76f2e5093e0e16c9532b213ddbf3ba646a56de2d667b80f8b79a8c60ff9729c920e51d8bc559bfb27225dc03a587d199c1f6778350d99bc6e599
7
+ data.tar.gz: c80625ca357986d28741426ddb7ef3ad97f253fed0e4a8b3f70585d91c3e70b93c38f55cce17ab661f6c48da56178429bd955c9948a08fece124967422fe1421
data/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # Changelog
2
2
 
3
+ ## [4.28.0](https://github.com/phrase/strings-openapi/compare/ruby-v4.27.0...ruby-v4.28.0) (2026-09-17)
4
+
5
+
6
+ ### Features
7
+
8
+ * **API:** add name filter query parameter to spaces list #STRINGS-3036 ([#1267](https://github.com/phrase/strings-openapi/issues/1267)) ([3b54f73](https://github.com/phrase/strings-openapi/commit/3b54f73252698dd93411cfaffff3a97ea114be92))
9
+ * **API:** document translation_keys_sort_collation on /projects endpoints ([#1270](https://github.com/phrase/strings-openapi/issues/1270)) ([0a22b46](https://github.com/phrase/strings-openapi/commit/0a22b467aa077a1743546bc53add0628c8c05927))
10
+
11
+ ## [4.27.0](https://github.com/phrase/strings-openapi/compare/ruby-v4.26.0...ruby-v4.27.0) (2026-09-11)
12
+
13
+
14
+ ### Features
15
+
16
+ * **API:** add Checks API endpoints ([#1242](https://github.com/phrase/strings-openapi/issues/1242)) ([0be2f2c](https://github.com/phrase/strings-openapi/commit/0be2f2c9f17f2488a936387e4f6824760c3b6a7c))
17
+ * **API:** add created_since filter to check issues list #STRINGS-3043 ([#1256](https://github.com/phrase/strings-openapi/issues/1256)) ([01f2da7](https://github.com/phrase/strings-openapi/commit/01f2da7da6fcae20ca8d76d1e8ab42a7f31a8918))
18
+ * **API:** add machine translation settings and locale provider mapping endpoints #STRINGS-2977 ([#1252](https://github.com/phrase/strings-openapi/issues/1252)) ([eeb265f](https://github.com/phrase/strings-openapi/commit/eeb265f432a2ae9c43fdc2f41ad09a01ef35690d))
19
+ * **API:** document tm_ids and term_base_ids params on projects API ([#1244](https://github.com/phrase/strings-openapi/issues/1244)) ([c8a2eea](https://github.com/phrase/strings-openapi/commit/c8a2eeab870236e46a8f87770c5499f0d6ffd2ca))
20
+
3
21
  ## [4.26.0](https://github.com/phrase/strings-openapi/compare/ruby-v4.25.0...ruby-v4.26.0) (2026-08-03)
4
22
 
5
23
 
data/README.md CHANGED
@@ -7,7 +7,7 @@ Phrase Strings is a translation management platform for software projects. You c
7
7
  ## This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
8
8
 
9
9
  - API version: 2.0.0
10
- - Package version: 4.26.0
10
+ - Package version: 4.28.0
11
11
  - Build package: org.openapitools.codegen.languages.RubyClientCodegen
12
12
  For more information, please visit [https://developers.phrase.com/api/](https://developers.phrase.com/api/)
13
13
 
@@ -56,10 +56,10 @@ gem build phrase.gemspec
56
56
  Then install the gem locally:
57
57
 
58
58
  ```shell
59
- gem install ./phrase-4.26.0.gem
59
+ gem install ./phrase-4.28.0.gem
60
60
  ```
61
61
 
62
- (for development, run `gem install --dev ./phrase-4.26.0.gem` to install the development dependencies)
62
+ (for development, run `gem install --dev ./phrase-4.28.0.gem` to install the development dependencies)
63
63
 
64
64
  ## Getting Started
65
65
 
@@ -161,6 +161,8 @@ Class | Method | HTTP request | Description
161
161
  *Phrase::BranchesApi* | [**branch_sync**](docs/BranchesApi.md#branch_sync) | **PATCH** /projects/{project_id}/branches/{name}/sync | Sync a branch
162
162
  *Phrase::BranchesApi* | [**branch_update**](docs/BranchesApi.md#branch_update) | **PATCH** /projects/{project_id}/branches/{name} | Update a branch
163
163
  *Phrase::BranchesApi* | [**branches_list**](docs/BranchesApi.md#branches_list) | **GET** /projects/{project_id}/branches | List branches
164
+ *Phrase::ChecksApi* | [**check_issue_dismiss**](docs/ChecksApi.md#check_issue_dismiss) | **PATCH** /projects/{project_id}/checks/issues/{id}/dismiss | Dismiss a check issue
165
+ *Phrase::ChecksApi* | [**check_issues_list**](docs/ChecksApi.md#check_issues_list) | **GET** /projects/{project_id}/checks/issues | List check issues
164
166
  *Phrase::CommentReactionsApi* | [**reaction_create**](docs/CommentReactionsApi.md#reaction_create) | **POST** /projects/{project_id}/keys/{key_id}/comments/{comment_id}/reactions | Create a reaction
165
167
  *Phrase::CommentReactionsApi* | [**reaction_delete**](docs/CommentReactionsApi.md#reaction_delete) | **DELETE** /projects/{project_id}/keys/{key_id}/comments/{comment_id}/reactions/{id} | Delete a reaction
166
168
  *Phrase::CommentReactionsApi* | [**reaction_show**](docs/CommentReactionsApi.md#reaction_show) | **GET** /projects/{project_id}/keys/{key_id}/comments/{comment_id}/reactions/{id} | Get a single reaction
@@ -287,6 +289,10 @@ Class | Method | HTTP request | Description
287
289
  *Phrase::LocalesApi* | [**locale_show**](docs/LocalesApi.md#locale_show) | **GET** /projects/{project_id}/locales/{id} | Get a single locale
288
290
  *Phrase::LocalesApi* | [**locale_update**](docs/LocalesApi.md#locale_update) | **PATCH** /projects/{project_id}/locales/{id} | Update a locale
289
291
  *Phrase::LocalesApi* | [**locales_list**](docs/LocalesApi.md#locales_list) | **GET** /projects/{project_id}/locales | List locales
292
+ *Phrase::MachineTranslationApi* | [**machine_translation_locale_provider_mappings_create**](docs/MachineTranslationApi.md#machine_translation_locale_provider_mappings_create) | **POST** /accounts/{account_id}/machine_translation_locale_provider_mappings | Create a locale provider mapping
293
+ *Phrase::MachineTranslationApi* | [**machine_translation_locale_provider_mappings_destroy**](docs/MachineTranslationApi.md#machine_translation_locale_provider_mappings_destroy) | **DELETE** /accounts/{account_id}/machine_translation_locale_provider_mappings | Delete a locale provider mapping
294
+ *Phrase::MachineTranslationApi* | [**machine_translation_settings_show**](docs/MachineTranslationApi.md#machine_translation_settings_show) | **GET** /accounts/{account_id}/machine_translation_settings | Get machine translation settings
295
+ *Phrase::MachineTranslationApi* | [**machine_translation_settings_update**](docs/MachineTranslationApi.md#machine_translation_settings_update) | **PATCH** /accounts/{account_id}/machine_translation_settings | Update machine translation settings
290
296
  *Phrase::MembersApi* | [**member_delete**](docs/MembersApi.md#member_delete) | **DELETE** /accounts/{account_id}/members/{id} | Remove a user from the account
291
297
  *Phrase::MembersApi* | [**member_show**](docs/MembersApi.md#member_show) | **GET** /accounts/{account_id}/members/{id} | Get single member
292
298
  *Phrase::MembersApi* | [**member_update**](docs/MembersApi.md#member_update) | **PATCH** /accounts/{account_id}/members/{id} | Update a member
@@ -455,6 +461,7 @@ Class | Method | HTTP request | Description
455
461
  - [Phrase::BranchName](docs/BranchName.md)
456
462
  - [Phrase::BranchSyncParameters](docs/BranchSyncParameters.md)
457
463
  - [Phrase::BranchUpdateParameters](docs/BranchUpdateParameters.md)
464
+ - [Phrase::CheckIssue](docs/CheckIssue.md)
458
465
  - [Phrase::Comment](docs/Comment.md)
459
466
  - [Phrase::CommentCreateParameters](docs/CommentCreateParameters.md)
460
467
  - [Phrase::CommentCreateParameters1](docs/CommentCreateParameters1.md)
@@ -552,6 +559,10 @@ Class | Method | HTTP request | Description
552
559
  - [Phrase::LocaleTeamPreview](docs/LocaleTeamPreview.md)
553
560
  - [Phrase::LocaleUpdateParameters](docs/LocaleUpdateParameters.md)
554
561
  - [Phrase::LocaleUserPreview](docs/LocaleUserPreview.md)
562
+ - [Phrase::MachineTranslationLocaleProviderMapping](docs/MachineTranslationLocaleProviderMapping.md)
563
+ - [Phrase::MachineTranslationLocaleProviderMappingsCreateParameters](docs/MachineTranslationLocaleProviderMappingsCreateParameters.md)
564
+ - [Phrase::MachineTranslationSettings](docs/MachineTranslationSettings.md)
565
+ - [Phrase::MachineTranslationSettingsUpdateParameters](docs/MachineTranslationSettingsUpdateParameters.md)
555
566
  - [Phrase::Member](docs/Member.md)
556
567
  - [Phrase::MemberProjectDetail](docs/MemberProjectDetail.md)
557
568
  - [Phrase::MemberProjectDetailProjectRolesInner](docs/MemberProjectDetailProjectRolesInner.md)
@@ -0,0 +1,33 @@
1
+ # Phrase::CheckIssue
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **id** | **String** | | [optional]
8
+ **check_name** | **String** | Identifier of the check that reported this issue. One of: `translation_content_length`, `translation_placeholder_usage`, `translation_glossary_usage`. | [optional]
9
+ **state** | **String** | Current state of the check issue. One of: `active`, `solved`, `dismissed`. | [optional]
10
+ **description** | **String** | Human-readable description of the reported issue, always in English. This message is intended for display only. Its wording may change at any time and it should not be parsed or relied upon programmatically. | [optional]
11
+ **dismissed_at** | **Time** | | [optional]
12
+ **solved_at** | **Time** | | [optional]
13
+ **created_at** | **Time** | | [optional]
14
+ **updated_at** | **Time** | | [optional]
15
+ **translation** | [**Translation**](Translation.md) | | [optional]
16
+
17
+ ## Code Sample
18
+
19
+ ```ruby
20
+ require 'Phrase'
21
+
22
+ instance = Phrase::CheckIssue.new(id: null,
23
+ check_name: null,
24
+ state: null,
25
+ description: null,
26
+ dismissed_at: null,
27
+ solved_at: null,
28
+ created_at: null,
29
+ updated_at: null,
30
+ translation: null)
31
+ ```
32
+
33
+
data/docs/ChecksApi.md ADDED
@@ -0,0 +1,146 @@
1
+ # Phrase::ChecksApi
2
+
3
+ All URIs are relative to *https://api.phrase.com/v2*
4
+
5
+ Method | HTTP request | Description
6
+ ------------- | ------------- | -------------
7
+ [**check_issue_dismiss**](ChecksApi.md#check_issue_dismiss) | **PATCH** /projects/{project_id}/checks/issues/{id}/dismiss | Dismiss a check issue
8
+ [**check_issues_list**](ChecksApi.md#check_issues_list) | **GET** /projects/{project_id}/checks/issues | List check issues
9
+
10
+
11
+
12
+ ## check_issue_dismiss
13
+
14
+ > CheckIssue check_issue_dismiss(project_id, id, opts)
15
+
16
+ Dismiss a check issue
17
+
18
+ **Note:** The Checks API is still in development and might change in subsequent releases. Mark a check issue as dismissed so it no longer appears on the list of active check issues.
19
+
20
+ ### Example
21
+
22
+ ```ruby
23
+ # load the gem
24
+ require 'phrase'
25
+ # setup authorization
26
+ Phrase.configure do |config|
27
+ # Configure HTTP basic authorization: Basic
28
+ config.username = 'YOUR USERNAME'
29
+ config.password = 'YOUR PASSWORD'
30
+
31
+ # Configure API key authorization: Token
32
+ config.api_key['Authorization'] = 'YOUR API KEY'
33
+ config.api_key_prefix['Authorization'] = 'token'
34
+ end
35
+
36
+ api_instance = Phrase::ChecksApi.new
37
+ project_id = 'project_id_example' # String | Project ID
38
+ id = 'id_example' # String | Check Issue ID
39
+ opts = {
40
+ x_phrase_app_otp: 'x_phrase_app_otp_example' # String | Two-Factor-Authentication token (optional)
41
+ }
42
+
43
+ begin
44
+ #Dismiss a check issue
45
+ result = api_instance.check_issue_dismiss(project_id, id, opts)
46
+ pp result
47
+ rescue Phrase::ApiError => e
48
+ puts "Exception when calling ChecksApi->check_issue_dismiss: #{e}"
49
+ end
50
+ ```
51
+
52
+ ### Parameters
53
+
54
+
55
+ Name | Type | Description | Notes
56
+ ------------- | ------------- | ------------- | -------------
57
+ **project_id** | **String**| Project ID |
58
+ **id** | **String**| Check Issue ID |
59
+ **x_phrase_app_otp** | **String**| Two-Factor-Authentication token (optional) | [optional]
60
+
61
+ ### Return type
62
+
63
+ Response<([**CheckIssue**](CheckIssue.md))>
64
+
65
+ ### Authorization
66
+
67
+ [Basic](../README.md#Basic), [Token](../README.md#Token)
68
+
69
+ ### HTTP request headers
70
+
71
+ - **Content-Type**: Not defined
72
+ - **Accept**: application/json
73
+
74
+
75
+ ## check_issues_list
76
+
77
+ > Array&lt;CheckIssue&gt; check_issues_list(project_id, opts)
78
+
79
+ List check issues
80
+
81
+ **Note:** The Checks API is still in development and might change in subsequent releases. List check issues for the given project. Results can be filtered by locale, check name, and state.
82
+
83
+ ### Example
84
+
85
+ ```ruby
86
+ # load the gem
87
+ require 'phrase'
88
+ # setup authorization
89
+ Phrase.configure do |config|
90
+ # Configure HTTP basic authorization: Basic
91
+ config.username = 'YOUR USERNAME'
92
+ config.password = 'YOUR PASSWORD'
93
+
94
+ # Configure API key authorization: Token
95
+ config.api_key['Authorization'] = 'YOUR API KEY'
96
+ config.api_key_prefix['Authorization'] = 'token'
97
+ end
98
+
99
+ api_instance = Phrase::ChecksApi.new
100
+ project_id = 'project_id_example' # String | Project ID
101
+ opts = {
102
+ x_phrase_app_otp: 'x_phrase_app_otp_example', # String | Two-Factor-Authentication token (optional)
103
+ page: 1, # Integer | Page number
104
+ per_page: 25, # Integer | Limit on the number of objects to be returned, between 1 and 100. 25 by default
105
+ state: 'active', # String | Filter by state of the check issue. Can be one of: `active`, `solved`, `dismissed`, `all`. Defaults to `active`.
106
+ locale_ids: ['inner_example'], # Array<String> | Filter by one or more locale IDs.
107
+ check_names: ['translation_content_length'], # Array<String> | Filter by one or more check names. Valid values are: - `translation_content_length` — the translation exceeds the maximum character limit configured for the key. - `translation_placeholder_usage` — the translation is missing placeholders present in the source, or contains unexpected ones. - `translation_glossary_usage` — the translation does not follow the glossary term translations.
108
+ created_since: '2026-01-01T12:00:00Z' # String | Return only check issues created on or after this ISO 8601 datetime. Returns 400 if the value is not a valid date-time.
109
+ }
110
+
111
+ begin
112
+ #List check issues
113
+ result = api_instance.check_issues_list(project_id, opts)
114
+ pp result
115
+ rescue Phrase::ApiError => e
116
+ puts "Exception when calling ChecksApi->check_issues_list: #{e}"
117
+ end
118
+ ```
119
+
120
+ ### Parameters
121
+
122
+
123
+ Name | Type | Description | Notes
124
+ ------------- | ------------- | ------------- | -------------
125
+ **project_id** | **String**| Project ID |
126
+ **x_phrase_app_otp** | **String**| Two-Factor-Authentication token (optional) | [optional]
127
+ **page** | **Integer**| Page number | [optional]
128
+ **per_page** | **Integer**| Limit on the number of objects to be returned, between 1 and 100. 25 by default | [optional]
129
+ **state** | **String**| Filter by state of the check issue. Can be one of: &#x60;active&#x60;, &#x60;solved&#x60;, &#x60;dismissed&#x60;, &#x60;all&#x60;. Defaults to &#x60;active&#x60;. | [optional] [default to &#39;active&#39;]
130
+ **locale_ids** | [**Array&lt;String&gt;**](String.md)| Filter by one or more locale IDs. | [optional]
131
+ **check_names** | [**Array&lt;String&gt;**](String.md)| Filter by one or more check names. Valid values are: - &#x60;translation_content_length&#x60; — the translation exceeds the maximum character limit configured for the key. - &#x60;translation_placeholder_usage&#x60; — the translation is missing placeholders present in the source, or contains unexpected ones. - &#x60;translation_glossary_usage&#x60; — the translation does not follow the glossary term translations. | [optional]
132
+ **created_since** | **String**| Return only check issues created on or after this ISO 8601 datetime. Returns 400 if the value is not a valid date-time. | [optional]
133
+
134
+ ### Return type
135
+
136
+ Response<([**Array&lt;CheckIssue&gt;**](CheckIssue.md))>
137
+
138
+ ### Authorization
139
+
140
+ [Basic](../README.md#Basic), [Token](../README.md#Token)
141
+
142
+ ### HTTP request headers
143
+
144
+ - **Content-Type**: Not defined
145
+ - **Accept**: application/json
146
+
@@ -10,7 +10,7 @@ Name | Type | Description | Notes
10
10
  **briefing** | **String** | Briefing for the translators | [optional]
11
11
  **due_date** | **Time** | Date the job should be finished | [optional]
12
12
  **ticket_url** | **String** | URL to a ticket for this job (e.g. Jira, Trello) | [optional]
13
- **tags** | **Array&lt;String&gt;** | tags of keys that should be included within the job | [optional]
13
+ **tags** | **Array&lt;String&gt;** | tags of keys that should be included within the job. *Note: a tag matches every key currently carrying that tag, not just the ones you just tagged. For example, if hundreds of pre-existing keys already share the tag &#x60;myUploadTag&#x60;, adding it here pulls in every one of them, not only the key you just tagged. Use &#x60;translation_key_ids&#x60; to scope the job to specific keys instead.* | [optional]
14
14
  **translation_key_ids** | **Array&lt;String&gt;** | ids of keys that should be included within the job | [optional]
15
15
  **target_locale_ids** | **Array&lt;String&gt;** | List of target locales for the job. Mutually exclusive with &#x60;job_template_id&#x60;. | [optional]
16
16
  **job_template_id** | **String** | id of a job template you would like to model the created job after. Any manually added parameters will take preference over template attributes. Mutually exclusive with &#x60;target_locale_ids&#x60;. | [optional]
@@ -40,7 +40,7 @@ instance = Phrase::KeyCreateParameters.new(branch: my-feature-branch,
40
40
  data_type: number,
41
41
  tags: awesome-feature,needs-proofreading,
42
42
  max_characters_allowed: 140,
43
- screenshot: [B@32a4284d,
43
+ screenshot: [B@4393cb22,
44
44
  remove_screenshot: null,
45
45
  unformatted: null,
46
46
  default_translation_content: Default translation content,
@@ -38,7 +38,7 @@ instance = Phrase::KeyUpdateParameters.new(branch: my-feature-branch,
38
38
  data_type: number,
39
39
  tags: awesome-feature,needs-proofreading,
40
40
  max_characters_allowed: 140,
41
- screenshot: [B@5a9d5e2,
41
+ screenshot: [B@3b1bf4bf,
42
42
  remove_screenshot: null,
43
43
  unformatted: null,
44
44
  xml_space_preserve: null,
data/docs/Locale.md CHANGED
@@ -15,6 +15,9 @@ Name | Type | Description | Notes
15
15
  **source_locale** | [**LocalePreview**](LocalePreview.md) | | [optional]
16
16
  **fallback_locale** | [**LocalePreview**](LocalePreview.md) | | [optional]
17
17
  **language_ai_profile** | **String** | | [optional]
18
+ **unverify_new_translations** | **Boolean** | Indicates that new translations for this locale are marked as unverified. Only applies to locales using the basic verification workflow. Part of the [Advanced Workflows](https://support.phrase.com/hc/en-us/articles/5784094755484) feature. | [optional]
19
+ **unverify_updated_translations** | **Boolean** | Indicates that updated translations for this locale are marked as unverified. Only applies to locales using the basic verification workflow. Part of the [Advanced Workflows](https://support.phrase.com/hc/en-us/articles/5784094755484) feature. | [optional]
20
+ **unverify_on_source_changes** | **Boolean** | Indicates that translations for this locale are marked as unverified when the source language has been changed. | [optional]
18
21
  **created_at** | **Time** | | [optional]
19
22
  **updated_at** | **Time** | | [optional]
20
23
 
@@ -34,6 +37,9 @@ instance = Phrase::Locale.new(id: null,
34
37
  source_locale: null,
35
38
  fallback_locale: null,
36
39
  language_ai_profile: null,
40
+ unverify_new_translations: null,
41
+ unverify_updated_translations: null,
42
+ unverify_on_source_changes: null,
37
43
  created_at: null,
38
44
  updated_at: null)
39
45
  ```
@@ -14,6 +14,7 @@ Name | Type | Description | Notes
14
14
  **fallback_locale_id** | **String** | Fallback locale for empty translations. Can be a locale name or id. | [optional]
15
15
  **unverify_new_translations** | **Boolean** | Indicates that new translations for this locale should be marked as unverified. Part of the [Advanced Workflows](https://support.phrase.com/hc/en-us/articles/5784094755484) feature. | [optional]
16
16
  **unverify_updated_translations** | **Boolean** | Indicates that updated translations for this locale should be marked as unverified. Part of the [Advanced Workflows](https://support.phrase.com/hc/en-us/articles/5784094755484) feature. | [optional]
17
+ **unverify_on_source_changes** | **Boolean** | Indicates that translations for this locale should be marked as unverified when the source language has been changed. | [optional]
17
18
  **autotranslate** | **Boolean** | If set, translations for this locale will be fetched automatically, right after creation. | [optional]
18
19
  **language_ai_profile** | **String** | Identifier of the Language AI profile to use for this locale. | [optional]
19
20
 
@@ -32,6 +33,7 @@ instance = Phrase::LocaleCreateParameters.new(branch: my-feature-branch,
32
33
  fallback_locale_id: abcd1234abcd1234abcd1234abcd1234,
33
34
  unverify_new_translations: null,
34
35
  unverify_updated_translations: null,
36
+ unverify_on_source_changes: null,
35
37
  autotranslate: null,
36
38
  language_ai_profile: abcd1234abcd1234abcd1234abcd1234)
37
39
  ```
@@ -15,6 +15,9 @@ Name | Type | Description | Notes
15
15
  **source_locale** | [**LocalePreview**](LocalePreview.md) | | [optional]
16
16
  **fallback_locale** | [**LocalePreview**](LocalePreview.md) | | [optional]
17
17
  **language_ai_profile** | **String** | | [optional]
18
+ **unverify_new_translations** | **Boolean** | Indicates that new translations for this locale are marked as unverified. Only applies to locales using the basic verification workflow. Part of the [Advanced Workflows](https://support.phrase.com/hc/en-us/articles/5784094755484) feature. | [optional]
19
+ **unverify_updated_translations** | **Boolean** | Indicates that updated translations for this locale are marked as unverified. Only applies to locales using the basic verification workflow. Part of the [Advanced Workflows](https://support.phrase.com/hc/en-us/articles/5784094755484) feature. | [optional]
20
+ **unverify_on_source_changes** | **Boolean** | Indicates that translations for this locale are marked as unverified when the source language has been changed. | [optional]
18
21
  **created_at** | **Time** | | [optional]
19
22
  **updated_at** | **Time** | | [optional]
20
23
  **statistics** | [**LocaleStatistics**](LocaleStatistics.md) | | [optional]
@@ -35,6 +38,9 @@ instance = Phrase::LocaleDetails.new(id: null,
35
38
  source_locale: null,
36
39
  fallback_locale: null,
37
40
  language_ai_profile: null,
41
+ unverify_new_translations: null,
42
+ unverify_updated_translations: null,
43
+ unverify_on_source_changes: null,
38
44
  created_at: null,
39
45
  updated_at: null,
40
46
  statistics: null)
@@ -14,6 +14,7 @@ Name | Type | Description | Notes
14
14
  **fallback_locale_id** | **String** | Fallback locale for empty translations. Can be a locale name or id. | [optional]
15
15
  **unverify_new_translations** | **Boolean** | Indicates that new translations for this locale should be marked as unverified. Part of the [Advanced Workflows](https://support.phrase.com/hc/en-us/articles/5784094755484) feature. | [optional]
16
16
  **unverify_updated_translations** | **Boolean** | Indicates that updated translations for this locale should be marked as unverified. Part of the [Advanced Workflows](https://support.phrase.com/hc/en-us/articles/5784094755484) feature. | [optional]
17
+ **unverify_on_source_changes** | **Boolean** | Indicates that translations for this locale should be marked as unverified when the source language has been changed. | [optional]
17
18
  **autotranslate** | **Boolean** | If set, translations for this locale will be fetched automatically, right after creation. | [optional]
18
19
  **language_ai_profile** | **String** | Identifier of the Language AI profile to use for this locale. | [optional]
19
20
 
@@ -32,6 +33,7 @@ instance = Phrase::LocaleUpdateParameters.new(branch: my-feature-branch,
32
33
  fallback_locale_id: abcd1234abcd1234abcd1234abcd1234,
33
34
  unverify_new_translations: null,
34
35
  unverify_updated_translations: null,
36
+ unverify_on_source_changes: null,
35
37
  autotranslate: null,
36
38
  language_ai_profile: abcd1234abcd1234abcd1234abcd1234)
37
39
  ```
@@ -0,0 +1,263 @@
1
+ # Phrase::MachineTranslationApi
2
+
3
+ All URIs are relative to *https://api.phrase.com/v2*
4
+
5
+ Method | HTTP request | Description
6
+ ------------- | ------------- | -------------
7
+ [**machine_translation_locale_provider_mappings_create**](MachineTranslationApi.md#machine_translation_locale_provider_mappings_create) | **POST** /accounts/{account_id}/machine_translation_locale_provider_mappings | Create a locale provider mapping
8
+ [**machine_translation_locale_provider_mappings_destroy**](MachineTranslationApi.md#machine_translation_locale_provider_mappings_destroy) | **DELETE** /accounts/{account_id}/machine_translation_locale_provider_mappings | Delete a locale provider mapping
9
+ [**machine_translation_settings_show**](MachineTranslationApi.md#machine_translation_settings_show) | **GET** /accounts/{account_id}/machine_translation_settings | Get machine translation settings
10
+ [**machine_translation_settings_update**](MachineTranslationApi.md#machine_translation_settings_update) | **PATCH** /accounts/{account_id}/machine_translation_settings | Update machine translation settings
11
+
12
+
13
+
14
+ ## machine_translation_locale_provider_mappings_create
15
+
16
+ > MachineTranslationLocaleProviderMapping machine_translation_locale_provider_mappings_create(account_id, machine_translation_locale_provider_mappings_create_parameters, opts)
17
+
18
+ Create a locale provider mapping
19
+
20
+ Creates a locale-pair-specific machine translation provider override for the account. When a mapping exists for a given source/target locale pair, that provider is used instead of the account default. Only one mapping may exist per source/target locale pair; attempting to create a duplicate returns a validation error. The source and target locale codes must differ.
21
+
22
+ ### Example
23
+
24
+ ```ruby
25
+ # load the gem
26
+ require 'phrase'
27
+ # setup authorization
28
+ Phrase.configure do |config|
29
+ # Configure HTTP basic authorization: Basic
30
+ config.username = 'YOUR USERNAME'
31
+ config.password = 'YOUR PASSWORD'
32
+
33
+ # Configure API key authorization: Token
34
+ config.api_key['Authorization'] = 'YOUR API KEY'
35
+ config.api_key_prefix['Authorization'] = 'token'
36
+ end
37
+
38
+ api_instance = Phrase::MachineTranslationApi.new
39
+ account_id = 'account_id_example' # String | Account ID
40
+ machine_translation_locale_provider_mappings_create_parameters = Phrase::MachineTranslationLocaleProviderMappingsCreateParameters.new({source_locale_code: 'en', target_locale_code: 'de', service: 'google_translate'}) # MachineTranslationLocaleProviderMappingsCreateParameters |
41
+ opts = {
42
+ x_phrase_app_otp: 'x_phrase_app_otp_example' # String | Two-Factor-Authentication token (optional)
43
+ }
44
+
45
+ begin
46
+ #Create a locale provider mapping
47
+ result = api_instance.machine_translation_locale_provider_mappings_create(account_id, machine_translation_locale_provider_mappings_create_parameters, opts)
48
+ pp result
49
+ rescue Phrase::ApiError => e
50
+ puts "Exception when calling MachineTranslationApi->machine_translation_locale_provider_mappings_create: #{e}"
51
+ end
52
+ ```
53
+
54
+ ### Parameters
55
+
56
+
57
+ Name | Type | Description | Notes
58
+ ------------- | ------------- | ------------- | -------------
59
+ **account_id** | **String**| Account ID |
60
+ **machine_translation_locale_provider_mappings_create_parameters** | [**MachineTranslationLocaleProviderMappingsCreateParameters**](MachineTranslationLocaleProviderMappingsCreateParameters.md)| |
61
+ **x_phrase_app_otp** | **String**| Two-Factor-Authentication token (optional) | [optional]
62
+
63
+ ### Return type
64
+
65
+ Response<([**MachineTranslationLocaleProviderMapping**](MachineTranslationLocaleProviderMapping.md))>
66
+
67
+ ### Authorization
68
+
69
+ [Basic](../README.md#Basic), [Token](../README.md#Token)
70
+
71
+ ### HTTP request headers
72
+
73
+ - **Content-Type**: application/json
74
+ - **Accept**: application/json
75
+
76
+
77
+ ## machine_translation_locale_provider_mappings_destroy
78
+
79
+ > machine_translation_locale_provider_mappings_destroy(account_id, source_locale_code, target_locale_code, opts)
80
+
81
+ Delete a locale provider mapping
82
+
83
+ Removes the machine translation provider override for the specified source and target locale pair. The mapping is identified by locale codes supplied as query parameters rather than a path ID.
84
+
85
+ ### Example
86
+
87
+ ```ruby
88
+ # load the gem
89
+ require 'phrase'
90
+ # setup authorization
91
+ Phrase.configure do |config|
92
+ # Configure HTTP basic authorization: Basic
93
+ config.username = 'YOUR USERNAME'
94
+ config.password = 'YOUR PASSWORD'
95
+
96
+ # Configure API key authorization: Token
97
+ config.api_key['Authorization'] = 'YOUR API KEY'
98
+ config.api_key_prefix['Authorization'] = 'token'
99
+ end
100
+
101
+ api_instance = Phrase::MachineTranslationApi.new
102
+ account_id = 'account_id_example' # String | Account ID
103
+ source_locale_code = 'en' # String | The locale code of the source language of the mapping to delete.
104
+ target_locale_code = 'de' # String | The locale code of the target language of the mapping to delete.
105
+ opts = {
106
+ x_phrase_app_otp: 'x_phrase_app_otp_example' # String | Two-Factor-Authentication token (optional)
107
+ }
108
+
109
+ begin
110
+ #Delete a locale provider mapping
111
+ api_instance.machine_translation_locale_provider_mappings_destroy(account_id, source_locale_code, target_locale_code, opts)
112
+ rescue Phrase::ApiError => e
113
+ puts "Exception when calling MachineTranslationApi->machine_translation_locale_provider_mappings_destroy: #{e}"
114
+ end
115
+ ```
116
+
117
+ ### Parameters
118
+
119
+
120
+ Name | Type | Description | Notes
121
+ ------------- | ------------- | ------------- | -------------
122
+ **account_id** | **String**| Account ID |
123
+ **source_locale_code** | **String**| The locale code of the source language of the mapping to delete. |
124
+ **target_locale_code** | **String**| The locale code of the target language of the mapping to delete. |
125
+ **x_phrase_app_otp** | **String**| Two-Factor-Authentication token (optional) | [optional]
126
+
127
+ ### Return type
128
+
129
+ Response<(nil (empty response body))>
130
+
131
+ ### Authorization
132
+
133
+ [Basic](../README.md#Basic), [Token](../README.md#Token)
134
+
135
+ ### HTTP request headers
136
+
137
+ - **Content-Type**: Not defined
138
+ - **Accept**: Not defined
139
+
140
+
141
+ ## machine_translation_settings_show
142
+
143
+ > MachineTranslationSettings machine_translation_settings_show(account_id, opts)
144
+
145
+ Get machine translation settings
146
+
147
+ Returns the machine translation configuration for the account, including the default translation service, current machine translation unit usage, and any locale-pair-specific provider mappings.
148
+
149
+ ### Example
150
+
151
+ ```ruby
152
+ # load the gem
153
+ require 'phrase'
154
+ # setup authorization
155
+ Phrase.configure do |config|
156
+ # Configure HTTP basic authorization: Basic
157
+ config.username = 'YOUR USERNAME'
158
+ config.password = 'YOUR PASSWORD'
159
+
160
+ # Configure API key authorization: Token
161
+ config.api_key['Authorization'] = 'YOUR API KEY'
162
+ config.api_key_prefix['Authorization'] = 'token'
163
+ end
164
+
165
+ api_instance = Phrase::MachineTranslationApi.new
166
+ account_id = 'account_id_example' # String | Account ID
167
+ opts = {
168
+ x_phrase_app_otp: 'x_phrase_app_otp_example' # String | Two-Factor-Authentication token (optional)
169
+ }
170
+
171
+ begin
172
+ #Get machine translation settings
173
+ result = api_instance.machine_translation_settings_show(account_id, opts)
174
+ pp result
175
+ rescue Phrase::ApiError => e
176
+ puts "Exception when calling MachineTranslationApi->machine_translation_settings_show: #{e}"
177
+ end
178
+ ```
179
+
180
+ ### Parameters
181
+
182
+
183
+ Name | Type | Description | Notes
184
+ ------------- | ------------- | ------------- | -------------
185
+ **account_id** | **String**| Account ID |
186
+ **x_phrase_app_otp** | **String**| Two-Factor-Authentication token (optional) | [optional]
187
+
188
+ ### Return type
189
+
190
+ Response<([**MachineTranslationSettings**](MachineTranslationSettings.md))>
191
+
192
+ ### Authorization
193
+
194
+ [Basic](../README.md#Basic), [Token](../README.md#Token)
195
+
196
+ ### HTTP request headers
197
+
198
+ - **Content-Type**: Not defined
199
+ - **Accept**: application/json
200
+
201
+
202
+ ## machine_translation_settings_update
203
+
204
+ > MachineTranslationSettings machine_translation_settings_update(account_id, machine_translation_settings_update_parameters, opts)
205
+
206
+ Update machine translation settings
207
+
208
+ Sets the default machine translation service for the account. Requires write access to the account's machine translation settings. Passing an empty or absent value for `default_service` resets the account to its plan default (Microsoft Translate).
209
+
210
+ ### Example
211
+
212
+ ```ruby
213
+ # load the gem
214
+ require 'phrase'
215
+ # setup authorization
216
+ Phrase.configure do |config|
217
+ # Configure HTTP basic authorization: Basic
218
+ config.username = 'YOUR USERNAME'
219
+ config.password = 'YOUR PASSWORD'
220
+
221
+ # Configure API key authorization: Token
222
+ config.api_key['Authorization'] = 'YOUR API KEY'
223
+ config.api_key_prefix['Authorization'] = 'token'
224
+ end
225
+
226
+ api_instance = Phrase::MachineTranslationApi.new
227
+ account_id = 'account_id_example' # String | Account ID
228
+ machine_translation_settings_update_parameters = Phrase::MachineTranslationSettingsUpdateParameters.new # MachineTranslationSettingsUpdateParameters |
229
+ opts = {
230
+ x_phrase_app_otp: 'x_phrase_app_otp_example' # String | Two-Factor-Authentication token (optional)
231
+ }
232
+
233
+ begin
234
+ #Update machine translation settings
235
+ result = api_instance.machine_translation_settings_update(account_id, machine_translation_settings_update_parameters, opts)
236
+ pp result
237
+ rescue Phrase::ApiError => e
238
+ puts "Exception when calling MachineTranslationApi->machine_translation_settings_update: #{e}"
239
+ end
240
+ ```
241
+
242
+ ### Parameters
243
+
244
+
245
+ Name | Type | Description | Notes
246
+ ------------- | ------------- | ------------- | -------------
247
+ **account_id** | **String**| Account ID |
248
+ **machine_translation_settings_update_parameters** | [**MachineTranslationSettingsUpdateParameters**](MachineTranslationSettingsUpdateParameters.md)| |
249
+ **x_phrase_app_otp** | **String**| Two-Factor-Authentication token (optional) | [optional]
250
+
251
+ ### Return type
252
+
253
+ Response<([**MachineTranslationSettings**](MachineTranslationSettings.md))>
254
+
255
+ ### Authorization
256
+
257
+ [Basic](../README.md#Basic), [Token](../README.md#Token)
258
+
259
+ ### HTTP request headers
260
+
261
+ - **Content-Type**: application/json
262
+ - **Accept**: application/json
263
+