label-studio-sdk 2.0.1__py3-none-any.whl → 2.0.2__py3-none-any.whl

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.

Potentially problematic release.


This version of label-studio-sdk might be problematic. Click here for more details.

Files changed (167) hide show
  1. label_studio_sdk/__init__.py +4 -0
  2. label_studio_sdk/actions/client.py +13 -13
  3. label_studio_sdk/actions/types/actions_list_response_item.py +3 -3
  4. label_studio_sdk/actions/types/actions_list_response_item_dialog.py +2 -2
  5. label_studio_sdk/annotations/client.py +441 -441
  6. label_studio_sdk/comments/client.py +176 -176
  7. label_studio_sdk/export_storage/azure/client.py +274 -274
  8. label_studio_sdk/export_storage/gcs/client.py +263 -263
  9. label_studio_sdk/export_storage/local/client.py +206 -206
  10. label_studio_sdk/export_storage/redis/client.py +287 -287
  11. label_studio_sdk/export_storage/s3/client.py +347 -347
  12. label_studio_sdk/export_storage/s3s/client.py +678 -678
  13. label_studio_sdk/import_storage/azure/client.py +357 -357
  14. label_studio_sdk/import_storage/gcs/client.py +357 -357
  15. label_studio_sdk/import_storage/local/client.py +206 -206
  16. label_studio_sdk/import_storage/redis/client.py +309 -309
  17. label_studio_sdk/import_storage/s3/client.py +452 -452
  18. label_studio_sdk/import_storage/s3s/client.py +735 -735
  19. label_studio_sdk/jwt_settings/client.py +10 -10
  20. label_studio_sdk/ml/client.py +118 -118
  21. label_studio_sdk/ml/types/ml_list_model_versions_response.py +1 -1
  22. label_studio_sdk/model_providers/client.py +181 -181
  23. label_studio_sdk/organizations/members/client.py +8 -8
  24. label_studio_sdk/predictions/client.py +60 -60
  25. label_studio_sdk/projects/__init__.py +30 -1
  26. label_studio_sdk/projects/assignments/__init__.py +33 -0
  27. label_studio_sdk/projects/assignments/client.py +764 -0
  28. label_studio_sdk/projects/assignments/types/__init__.py +35 -0
  29. label_studio_sdk/projects/assignments/types/assignments_assign_request_type.py +5 -0
  30. label_studio_sdk/projects/assignments/types/assignments_bulk_assign_request_filters.py +33 -0
  31. label_studio_sdk/projects/assignments/types/assignments_bulk_assign_request_filters_conjunction.py +5 -0
  32. label_studio_sdk/projects/assignments/types/assignments_bulk_assign_request_filters_items_item.py +44 -0
  33. label_studio_sdk/projects/assignments/types/assignments_bulk_assign_request_filters_items_item_filter.py +31 -0
  34. label_studio_sdk/projects/assignments/types/assignments_bulk_assign_request_filters_items_item_operator.py +23 -0
  35. label_studio_sdk/projects/assignments/types/assignments_bulk_assign_request_filters_items_item_value.py +7 -0
  36. label_studio_sdk/projects/assignments/types/assignments_bulk_assign_request_selected_items.py +9 -0
  37. label_studio_sdk/projects/assignments/types/assignments_bulk_assign_request_selected_items_excluded.py +29 -0
  38. label_studio_sdk/projects/assignments/types/assignments_bulk_assign_request_selected_items_included.py +29 -0
  39. label_studio_sdk/projects/assignments/types/assignments_bulk_assign_request_type.py +5 -0
  40. label_studio_sdk/projects/assignments/types/assignments_bulk_assign_response.py +22 -0
  41. label_studio_sdk/projects/assignments/types/assignments_update_request_type.py +5 -0
  42. label_studio_sdk/projects/client.py +441 -425
  43. label_studio_sdk/projects/exports/client.py +55 -55
  44. label_studio_sdk/projects/exports/types/exports_convert_response.py +1 -1
  45. label_studio_sdk/projects/stats/types/stats_iaa_response.py +5 -5
  46. label_studio_sdk/projects/types/projects_import_tasks_response.py +12 -12
  47. label_studio_sdk/prompts/client.py +211 -211
  48. label_studio_sdk/prompts/runs/client.py +33 -33
  49. label_studio_sdk/prompts/versions/client.py +72 -72
  50. label_studio_sdk/tasks/client.py +174 -174
  51. label_studio_sdk/types/__init__.py +4 -0
  52. label_studio_sdk/types/all_roles_project_list.py +94 -94
  53. label_studio_sdk/types/annotation.py +35 -35
  54. label_studio_sdk/types/annotation_request.py +27 -27
  55. label_studio_sdk/types/azure_blob_export_storage.py +29 -29
  56. label_studio_sdk/types/azure_blob_import_storage.py +33 -33
  57. label_studio_sdk/types/batch_failed_predictions.py +1 -1
  58. label_studio_sdk/types/billing_checks.py +14 -14
  59. label_studio_sdk/types/billing_flags.py +16 -16
  60. label_studio_sdk/types/blueprint_list.py +7 -8
  61. label_studio_sdk/types/child_filter.py +11 -10
  62. label_studio_sdk/types/comment.py +15 -15
  63. label_studio_sdk/types/comment_request.py +7 -8
  64. label_studio_sdk/types/comment_serializer_with_expanded_user.py +17 -18
  65. label_studio_sdk/types/converted_format.py +1 -1
  66. label_studio_sdk/types/converted_format_request.py +1 -1
  67. label_studio_sdk/types/export.py +8 -8
  68. label_studio_sdk/types/file_upload.py +3 -2
  69. label_studio_sdk/types/filter.py +10 -9
  70. label_studio_sdk/types/filter_group.py +4 -3
  71. label_studio_sdk/types/gcs_export_storage.py +23 -23
  72. label_studio_sdk/types/gcs_import_storage.py +27 -27
  73. label_studio_sdk/types/import_api_request.py +26 -26
  74. label_studio_sdk/types/inference_run_cost_estimate.py +10 -10
  75. label_studio_sdk/types/local_files_export_storage.py +23 -23
  76. label_studio_sdk/types/local_files_import_storage.py +26 -26
  77. label_studio_sdk/types/lse_annotation_filter_options.py +10 -10
  78. label_studio_sdk/types/lse_annotation_filter_options_request.py +10 -10
  79. label_studio_sdk/types/lse_export_create.py +12 -12
  80. label_studio_sdk/types/lse_fields.py +14 -14
  81. label_studio_sdk/types/lse_organization.py +17 -17
  82. label_studio_sdk/types/lse_organization_member_list.py +1 -1
  83. label_studio_sdk/types/lse_project_create.py +72 -72
  84. label_studio_sdk/types/lse_project_update.py +89 -89
  85. label_studio_sdk/types/lse_s3export_storage.py +46 -46
  86. label_studio_sdk/types/lse_s3export_storage_request.py +43 -43
  87. label_studio_sdk/types/lse_s3import_storage.py +53 -53
  88. label_studio_sdk/types/lse_s3import_storage_request.py +49 -49
  89. label_studio_sdk/types/lse_task.py +49 -49
  90. label_studio_sdk/types/lse_task_drafts_item.py +1 -1
  91. label_studio_sdk/types/lse_task_filter_options.py +14 -14
  92. label_studio_sdk/types/lse_task_filter_options_request.py +14 -14
  93. label_studio_sdk/types/lse_task_predictions_item.py +5 -5
  94. label_studio_sdk/types/lse_task_serializer_for_annotators.py +12 -12
  95. label_studio_sdk/types/lse_task_serializer_for_annotators_drafts_item.py +1 -1
  96. label_studio_sdk/types/lse_task_serializer_for_annotators_predictions_item.py +5 -5
  97. label_studio_sdk/types/lse_task_serializer_for_reviewers.py +49 -49
  98. label_studio_sdk/types/lse_task_serializer_for_reviewers_drafts_item.py +1 -1
  99. label_studio_sdk/types/lse_task_serializer_for_reviewers_predictions_item.py +5 -5
  100. label_studio_sdk/types/lse_user.py +13 -13
  101. label_studio_sdk/types/lse_user_api.py +11 -11
  102. label_studio_sdk/types/lse_user_organization_member_list.py +13 -13
  103. label_studio_sdk/types/lseapi_token_create.py +1 -1
  104. label_studio_sdk/types/lseapi_token_list.py +1 -1
  105. label_studio_sdk/types/lsejwt_settings.py +5 -5
  106. label_studio_sdk/types/ml_backend.py +27 -28
  107. label_studio_sdk/types/model_interface.py +12 -12
  108. label_studio_sdk/types/model_interface_request.py +7 -8
  109. label_studio_sdk/types/model_interface_serializer_get.py +13 -13
  110. label_studio_sdk/types/model_provider_connection.py +34 -34
  111. label_studio_sdk/types/model_provider_connection_request.py +15 -14
  112. label_studio_sdk/types/model_run.py +12 -12
  113. label_studio_sdk/types/organization_billing.py +1 -1
  114. label_studio_sdk/types/organization_id.py +2 -2
  115. label_studio_sdk/types/organization_invite.py +1 -1
  116. label_studio_sdk/types/organization_member.py +8 -9
  117. label_studio_sdk/types/organization_membership.py +2 -1
  118. label_studio_sdk/types/pause.py +23 -23
  119. label_studio_sdk/types/prediction.py +21 -21
  120. label_studio_sdk/types/prediction_request.py +16 -16
  121. label_studio_sdk/types/project.py +72 -72
  122. label_studio_sdk/types/project_import.py +21 -21
  123. label_studio_sdk/types/redis_export_storage.py +34 -34
  124. label_studio_sdk/types/redis_import_storage.py +37 -37
  125. label_studio_sdk/types/refined_prompt_response.py +11 -11
  126. label_studio_sdk/types/review_settings.py +29 -30
  127. label_studio_sdk/types/review_settings_request.py +29 -30
  128. label_studio_sdk/types/s3export_storage.py +45 -45
  129. label_studio_sdk/types/s3import_storage.py +44 -44
  130. label_studio_sdk/types/selected_items_request.py +1 -1
  131. label_studio_sdk/types/serialization_options.py +10 -10
  132. label_studio_sdk/types/serialization_options_request.py +10 -10
  133. label_studio_sdk/types/task_assignment.py +43 -0
  134. label_studio_sdk/types/third_party_model_version.py +11 -11
  135. label_studio_sdk/types/third_party_model_version_request.py +6 -7
  136. label_studio_sdk/types/type_enum.py +5 -0
  137. label_studio_sdk/types/user_simple.py +3 -3
  138. label_studio_sdk/types/user_simple_request.py +1 -1
  139. label_studio_sdk/types/version_response.py +19 -20
  140. label_studio_sdk/types/view.py +8 -8
  141. label_studio_sdk/types/webhook.py +16 -16
  142. label_studio_sdk/types/webhook_serializer_for_update.py +16 -16
  143. label_studio_sdk/types/workspace.py +10 -11
  144. label_studio_sdk/users/client.py +160 -160
  145. label_studio_sdk/views/client.py +164 -164
  146. label_studio_sdk/webhooks/client.py +183 -183
  147. label_studio_sdk/webhooks/types/webhooks_info_response.py +32 -32
  148. label_studio_sdk/webhooks/types/webhooks_info_response_annotation_created.py +1 -1
  149. label_studio_sdk/webhooks/types/webhooks_info_response_annotation_updated.py +1 -1
  150. label_studio_sdk/webhooks/types/webhooks_info_response_annotations_created.py +1 -1
  151. label_studio_sdk/webhooks/types/webhooks_info_response_annotations_deleted.py +1 -1
  152. label_studio_sdk/webhooks/types/webhooks_info_response_label_link_created.py +1 -1
  153. label_studio_sdk/webhooks/types/webhooks_info_response_label_link_deleted.py +1 -1
  154. label_studio_sdk/webhooks/types/webhooks_info_response_label_link_updated.py +1 -1
  155. label_studio_sdk/webhooks/types/webhooks_info_response_project_created.py +1 -1
  156. label_studio_sdk/webhooks/types/webhooks_info_response_project_deleted.py +1 -1
  157. label_studio_sdk/webhooks/types/webhooks_info_response_project_updated.py +1 -1
  158. label_studio_sdk/webhooks/types/webhooks_info_response_review_created.py +1 -1
  159. label_studio_sdk/webhooks/types/webhooks_info_response_review_updated.py +1 -1
  160. label_studio_sdk/webhooks/types/webhooks_info_response_reviews_deleted.py +1 -1
  161. label_studio_sdk/webhooks/types/webhooks_info_response_tasks_created.py +1 -1
  162. label_studio_sdk/webhooks/types/webhooks_info_response_tasks_deleted.py +1 -1
  163. label_studio_sdk/workspaces/client.py +40 -40
  164. {label_studio_sdk-2.0.1.dist-info → label_studio_sdk-2.0.2.dist-info}/METADATA +1 -1
  165. {label_studio_sdk-2.0.1.dist-info → label_studio_sdk-2.0.2.dist-info}/RECORD +167 -149
  166. {label_studio_sdk-2.0.1.dist-info → label_studio_sdk-2.0.2.dist-info}/LICENSE +0 -0
  167. {label_studio_sdk-2.0.1.dist-info → label_studio_sdk-2.0.2.dist-info}/WHEEL +0 -0
@@ -4,6 +4,7 @@ import typing
4
4
  from ..core.client_wrapper import SyncClientWrapper
5
5
  from .exports.client import ExportsClient
6
6
  from .stats.client import StatsClient
7
+ from .assignments.client import AssignmentsClient
7
8
  from .pauses.client import PausesClient
8
9
  from .types.projects_list_request_filter import ProjectsListRequestFilter
9
10
  from ..core.request_options import RequestOptions
@@ -14,17 +15,17 @@ from ..core.unchecked_base_model import construct_type
14
15
  from json.decoder import JSONDecodeError
15
16
  from ..core.api_error import ApiError
16
17
  from ..types.user_simple_request import UserSimpleRequest
18
+ import datetime as dt
17
19
  from .types.lse_project_create_request_sampling import LseProjectCreateRequestSampling
18
20
  from .types.lse_project_create_request_skip_queue import LseProjectCreateRequestSkipQueue
19
- import datetime as dt
20
21
  from ..types.lse_project_create import LseProjectCreate
21
22
  from ..core.serialization import convert_and_respect_annotation_metadata
22
23
  from ..types.project import Project
23
24
  from ..core.jsonable_encoder import jsonable_encoder
25
+ from ..types.assignment_settings_request import AssignmentSettingsRequest
26
+ from ..types.review_settings_request import ReviewSettingsRequest
24
27
  from .types.patched_lse_project_update_request_sampling import PatchedLseProjectUpdateRequestSampling
25
28
  from .types.patched_lse_project_update_request_skip_queue import PatchedLseProjectUpdateRequestSkipQueue
26
- from ..types.review_settings_request import ReviewSettingsRequest
27
- from ..types.assignment_settings_request import AssignmentSettingsRequest
28
29
  from ..types.lse_project_update import LseProjectUpdate
29
30
  from ..types.mode_enum import ModeEnum
30
31
  from .types.projects_duplicate_response import ProjectsDuplicateResponse
@@ -35,6 +36,7 @@ from ..types.project_label_config import ProjectLabelConfig
35
36
  from ..core.client_wrapper import AsyncClientWrapper
36
37
  from .exports.client import AsyncExportsClient
37
38
  from .stats.client import AsyncStatsClient
39
+ from .assignments.client import AsyncAssignmentsClient
38
40
  from .pauses.client import AsyncPausesClient
39
41
  from ..core.pagination import AsyncPager
40
42
 
@@ -47,6 +49,7 @@ class ProjectsClient:
47
49
  self._client_wrapper = client_wrapper
48
50
  self.exports = ExportsClient(client_wrapper=self._client_wrapper)
49
51
  self.stats = StatsClient(client_wrapper=self._client_wrapper)
52
+ self.assignments = AssignmentsClient(client_wrapper=self._client_wrapper)
50
53
  self.pauses = PausesClient(client_wrapper=self._client_wrapper)
51
54
 
52
55
  def list(
@@ -55,6 +58,7 @@ class ProjectsClient:
55
58
  filter: typing.Optional[ProjectsListRequestFilter] = None,
56
59
  ids: typing.Optional[str] = None,
57
60
  include: typing.Optional[str] = None,
61
+ members_limit: typing.Optional[int] = None,
58
62
  ordering: typing.Optional[str] = None,
59
63
  page: typing.Optional[int] = None,
60
64
  page_size: typing.Optional[int] = None,
@@ -76,6 +80,9 @@ class ProjectsClient:
76
80
  include : typing.Optional[str]
77
81
  Comma-separated list of count fields to include in the response to optimize performance. Available fields: task_number, finished_task_number, total_predictions_number, total_annotations_number, num_tasks_with_annotations, useful_annotation_number, ground_truth_number, skipped_annotations_number. If not specified, all count fields are included.
78
82
 
83
+ members_limit : typing.Optional[int]
84
+ Maximum number of members to return.
85
+
79
86
  ordering : typing.Optional[str]
80
87
  Which field to use when ordering the results.
81
88
 
@@ -121,6 +128,7 @@ class ProjectsClient:
121
128
  "filter": filter,
122
129
  "ids": ids,
123
130
  "include": include,
131
+ "members_limit": members_limit,
124
132
  "ordering": ordering,
125
133
  "page": page,
126
134
  "page_size": page_size,
@@ -143,6 +151,7 @@ class ProjectsClient:
143
151
  filter=filter,
144
152
  ids=ids,
145
153
  include=include,
154
+ members_limit=members_limit,
146
155
  ordering=ordering,
147
156
  page=page + 1,
148
157
  page_size=page_size,
@@ -160,34 +169,34 @@ class ProjectsClient:
160
169
  def create(
161
170
  self,
162
171
  *,
163
- title: typing.Optional[str] = OMIT,
172
+ color: typing.Optional[str] = OMIT,
173
+ control_weights: typing.Optional[typing.Optional[typing.Any]] = OMIT,
174
+ created_by: typing.Optional[UserSimpleRequest] = OMIT,
164
175
  description: typing.Optional[str] = OMIT,
165
- label_config: typing.Optional[str] = OMIT,
166
- expert_instruction: typing.Optional[str] = OMIT,
167
- show_instruction: typing.Optional[bool] = OMIT,
168
- show_skip_button: typing.Optional[bool] = OMIT,
169
176
  enable_empty_annotation: typing.Optional[bool] = OMIT,
170
- show_annotation_history: typing.Optional[bool] = OMIT,
171
- organization: typing.Optional[int] = OMIT,
172
- color: typing.Optional[str] = OMIT,
173
- maximum_annotations: typing.Optional[int] = OMIT,
174
- is_published: typing.Optional[bool] = OMIT,
175
- model_version: typing.Optional[str] = OMIT,
177
+ evaluate_predictions_automatically: typing.Optional[bool] = OMIT,
178
+ expert_instruction: typing.Optional[str] = OMIT,
176
179
  is_draft: typing.Optional[bool] = OMIT,
177
- created_by: typing.Optional[UserSimpleRequest] = OMIT,
180
+ is_published: typing.Optional[bool] = OMIT,
181
+ label_config: typing.Optional[str] = OMIT,
182
+ maximum_annotations: typing.Optional[int] = OMIT,
178
183
  min_annotations_to_start_training: typing.Optional[int] = OMIT,
179
- show_collab_predictions: typing.Optional[bool] = OMIT,
184
+ model_version: typing.Optional[str] = OMIT,
185
+ organization: typing.Optional[int] = OMIT,
186
+ overlap_cohort_percentage: typing.Optional[int] = OMIT,
187
+ pinned_at: typing.Optional[dt.datetime] = OMIT,
188
+ reveal_preannotations_interactively: typing.Optional[bool] = OMIT,
180
189
  sampling: typing.Optional[LseProjectCreateRequestSampling] = OMIT,
190
+ show_annotation_history: typing.Optional[bool] = OMIT,
191
+ show_collab_predictions: typing.Optional[bool] = OMIT,
181
192
  show_ground_truth_first: typing.Optional[bool] = OMIT,
193
+ show_instruction: typing.Optional[bool] = OMIT,
182
194
  show_overlap_first: typing.Optional[bool] = OMIT,
183
- overlap_cohort_percentage: typing.Optional[int] = OMIT,
195
+ show_skip_button: typing.Optional[bool] = OMIT,
196
+ skip_queue: typing.Optional[LseProjectCreateRequestSkipQueue] = OMIT,
184
197
  task_data_login: typing.Optional[str] = OMIT,
185
198
  task_data_password: typing.Optional[str] = OMIT,
186
- control_weights: typing.Optional[typing.Optional[typing.Any]] = OMIT,
187
- evaluate_predictions_automatically: typing.Optional[bool] = OMIT,
188
- skip_queue: typing.Optional[LseProjectCreateRequestSkipQueue] = OMIT,
189
- reveal_preannotations_interactively: typing.Optional[bool] = OMIT,
190
- pinned_at: typing.Optional[dt.datetime] = OMIT,
199
+ title: typing.Optional[str] = OMIT,
191
200
  workspace: typing.Optional[int] = OMIT,
192
201
  request_options: typing.Optional[RequestOptions] = None,
193
202
  ) -> LseProjectCreate:
@@ -196,62 +205,72 @@ class ProjectsClient:
196
205
 
197
206
  Parameters
198
207
  ----------
199
- title : typing.Optional[str]
200
- Project name. Must be between 3 and 50 characters long.
208
+ color : typing.Optional[str]
209
+
210
+ control_weights : typing.Optional[typing.Optional[typing.Any]]
211
+
212
+ created_by : typing.Optional[UserSimpleRequest]
213
+ Project owner
201
214
 
202
215
  description : typing.Optional[str]
203
216
  Project description
204
217
 
205
- label_config : typing.Optional[str]
206
- Label config in XML format. See more about it in documentation
218
+ enable_empty_annotation : typing.Optional[bool]
219
+ Allow annotators to submit empty annotations
220
+
221
+ evaluate_predictions_automatically : typing.Optional[bool]
222
+ Retrieve and display predictions when loading a task
207
223
 
208
224
  expert_instruction : typing.Optional[str]
209
225
  Labeling instructions in HTML format
210
226
 
211
- show_instruction : typing.Optional[bool]
212
- Show instructions to the annotator before they start
213
-
214
- show_skip_button : typing.Optional[bool]
215
- Show a skip button in interface and allow annotators to skip the task
216
-
217
- enable_empty_annotation : typing.Optional[bool]
218
- Allow annotators to submit empty annotations
219
-
220
- show_annotation_history : typing.Optional[bool]
221
- Show annotation history to annotator
227
+ is_draft : typing.Optional[bool]
228
+ Whether or not the project is in the middle of being created
222
229
 
223
- organization : typing.Optional[int]
230
+ is_published : typing.Optional[bool]
231
+ Whether or not the project is published to annotators
224
232
 
225
- color : typing.Optional[str]
233
+ label_config : typing.Optional[str]
234
+ Label config in XML format. See more about it in documentation
226
235
 
227
236
  maximum_annotations : typing.Optional[int]
228
237
  Maximum number of annotations for one task. If the number of annotations per task is equal or greater to this value, the task is completed (is_labeled=True)
229
238
 
230
- is_published : typing.Optional[bool]
231
- Whether or not the project is published to annotators
239
+ min_annotations_to_start_training : typing.Optional[int]
240
+ Minimum number of completed tasks after which model training is started
232
241
 
233
242
  model_version : typing.Optional[str]
234
243
  Machine learning model version
235
244
 
236
- is_draft : typing.Optional[bool]
237
- Whether or not the project is in the middle of being created
245
+ organization : typing.Optional[int]
238
246
 
239
- created_by : typing.Optional[UserSimpleRequest]
240
- Project owner
247
+ overlap_cohort_percentage : typing.Optional[int]
241
248
 
242
- min_annotations_to_start_training : typing.Optional[int]
243
- Minimum number of completed tasks after which model training is started
249
+ pinned_at : typing.Optional[dt.datetime]
250
+ Pinned date and time
244
251
 
245
- show_collab_predictions : typing.Optional[bool]
246
- If set, the annotator can view model predictions
252
+ reveal_preannotations_interactively : typing.Optional[bool]
253
+ Reveal pre-annotations interactively
247
254
 
248
255
  sampling : typing.Optional[LseProjectCreateRequestSampling]
249
256
 
257
+ show_annotation_history : typing.Optional[bool]
258
+ Show annotation history to annotator
259
+
260
+ show_collab_predictions : typing.Optional[bool]
261
+ If set, the annotator can view model predictions
262
+
250
263
  show_ground_truth_first : typing.Optional[bool]
251
264
 
265
+ show_instruction : typing.Optional[bool]
266
+ Show instructions to the annotator before they start
267
+
252
268
  show_overlap_first : typing.Optional[bool]
253
269
 
254
- overlap_cohort_percentage : typing.Optional[int]
270
+ show_skip_button : typing.Optional[bool]
271
+ Show a skip button in interface and allow annotators to skip the task
272
+
273
+ skip_queue : typing.Optional[LseProjectCreateRequestSkipQueue]
255
274
 
256
275
  task_data_login : typing.Optional[str]
257
276
  Task data credentials: login
@@ -259,18 +278,8 @@ class ProjectsClient:
259
278
  task_data_password : typing.Optional[str]
260
279
  Task data credentials: password
261
280
 
262
- control_weights : typing.Optional[typing.Optional[typing.Any]]
263
-
264
- evaluate_predictions_automatically : typing.Optional[bool]
265
- Retrieve and display predictions when loading a task
266
-
267
- skip_queue : typing.Optional[LseProjectCreateRequestSkipQueue]
268
-
269
- reveal_preannotations_interactively : typing.Optional[bool]
270
- Reveal pre-annotations interactively
271
-
272
- pinned_at : typing.Optional[dt.datetime]
273
- Pinned date and time
281
+ title : typing.Optional[str]
282
+ Project name. Must be between 3 and 50 characters long.
274
283
 
275
284
  workspace : typing.Optional[int]
276
285
 
@@ -295,40 +304,40 @@ class ProjectsClient:
295
304
  "api/projects/",
296
305
  method="POST",
297
306
  json={
298
- "title": title,
299
- "description": description,
300
- "label_config": label_config,
301
- "expert_instruction": expert_instruction,
302
- "show_instruction": show_instruction,
303
- "show_skip_button": show_skip_button,
304
- "enable_empty_annotation": enable_empty_annotation,
305
- "show_annotation_history": show_annotation_history,
306
- "organization": organization,
307
307
  "color": color,
308
- "maximum_annotations": maximum_annotations,
309
- "is_published": is_published,
310
- "model_version": model_version,
311
- "is_draft": is_draft,
308
+ "control_weights": control_weights,
312
309
  "created_by": convert_and_respect_annotation_metadata(
313
310
  object_=created_by, annotation=UserSimpleRequest, direction="write"
314
311
  ),
312
+ "description": description,
313
+ "enable_empty_annotation": enable_empty_annotation,
314
+ "evaluate_predictions_automatically": evaluate_predictions_automatically,
315
+ "expert_instruction": expert_instruction,
316
+ "is_draft": is_draft,
317
+ "is_published": is_published,
318
+ "label_config": label_config,
319
+ "maximum_annotations": maximum_annotations,
315
320
  "min_annotations_to_start_training": min_annotations_to_start_training,
316
- "show_collab_predictions": show_collab_predictions,
321
+ "model_version": model_version,
322
+ "organization": organization,
323
+ "overlap_cohort_percentage": overlap_cohort_percentage,
324
+ "pinned_at": pinned_at,
325
+ "reveal_preannotations_interactively": reveal_preannotations_interactively,
317
326
  "sampling": convert_and_respect_annotation_metadata(
318
327
  object_=sampling, annotation=LseProjectCreateRequestSampling, direction="write"
319
328
  ),
329
+ "show_annotation_history": show_annotation_history,
330
+ "show_collab_predictions": show_collab_predictions,
320
331
  "show_ground_truth_first": show_ground_truth_first,
332
+ "show_instruction": show_instruction,
321
333
  "show_overlap_first": show_overlap_first,
322
- "overlap_cohort_percentage": overlap_cohort_percentage,
323
- "task_data_login": task_data_login,
324
- "task_data_password": task_data_password,
325
- "control_weights": control_weights,
326
- "evaluate_predictions_automatically": evaluate_predictions_automatically,
334
+ "show_skip_button": show_skip_button,
327
335
  "skip_queue": convert_and_respect_annotation_metadata(
328
336
  object_=skip_queue, annotation=LseProjectCreateRequestSkipQueue, direction="write"
329
337
  ),
330
- "reveal_preannotations_interactively": reveal_preannotations_interactively,
331
- "pinned_at": pinned_at,
338
+ "task_data_login": task_data_login,
339
+ "task_data_password": task_data_password,
340
+ "title": title,
332
341
  "workspace": workspace,
333
342
  },
334
343
  headers={
@@ -440,46 +449,46 @@ class ProjectsClient:
440
449
  self,
441
450
  id: int,
442
451
  *,
443
- title: typing.Optional[str] = OMIT,
452
+ annotation_limit_count: typing.Optional[int] = OMIT,
453
+ annotation_limit_percent: typing.Optional[str] = OMIT,
454
+ annotator_evaluation_minimum_score: typing.Optional[str] = OMIT,
455
+ annotator_evaluation_minimum_tasks: typing.Optional[int] = OMIT,
456
+ assignment_settings: typing.Optional[AssignmentSettingsRequest] = OMIT,
457
+ color: typing.Optional[str] = OMIT,
458
+ comment_classification_config: typing.Optional[str] = OMIT,
459
+ control_weights: typing.Optional[typing.Optional[typing.Any]] = OMIT,
460
+ created_by: typing.Optional[UserSimpleRequest] = OMIT,
461
+ custom_script: typing.Optional[str] = OMIT,
462
+ custom_task_lock_ttl: typing.Optional[int] = OMIT,
444
463
  description: typing.Optional[str] = OMIT,
445
- label_config: typing.Optional[str] = OMIT,
446
- expert_instruction: typing.Optional[str] = OMIT,
447
- show_instruction: typing.Optional[bool] = OMIT,
448
- show_skip_button: typing.Optional[bool] = OMIT,
449
464
  enable_empty_annotation: typing.Optional[bool] = OMIT,
450
- show_annotation_history: typing.Optional[bool] = OMIT,
451
- organization: typing.Optional[int] = OMIT,
452
- color: typing.Optional[str] = OMIT,
453
- maximum_annotations: typing.Optional[int] = OMIT,
454
- is_published: typing.Optional[bool] = OMIT,
455
- model_version: typing.Optional[str] = OMIT,
465
+ evaluate_predictions_automatically: typing.Optional[bool] = OMIT,
466
+ expert_instruction: typing.Optional[str] = OMIT,
456
467
  is_draft: typing.Optional[bool] = OMIT,
457
- created_by: typing.Optional[UserSimpleRequest] = OMIT,
468
+ is_published: typing.Optional[bool] = OMIT,
469
+ label_config: typing.Optional[str] = OMIT,
470
+ maximum_annotations: typing.Optional[int] = OMIT,
458
471
  min_annotations_to_start_training: typing.Optional[int] = OMIT,
459
- show_collab_predictions: typing.Optional[bool] = OMIT,
472
+ model_version: typing.Optional[str] = OMIT,
473
+ organization: typing.Optional[int] = OMIT,
474
+ overlap_cohort_percentage: typing.Optional[int] = OMIT,
475
+ pause_on_failed_annotator_evaluation: typing.Optional[bool] = OMIT,
476
+ pinned_at: typing.Optional[dt.datetime] = OMIT,
477
+ require_comment_on_skip: typing.Optional[bool] = OMIT,
478
+ reveal_preannotations_interactively: typing.Optional[bool] = OMIT,
479
+ review_settings: typing.Optional[ReviewSettingsRequest] = OMIT,
460
480
  sampling: typing.Optional[PatchedLseProjectUpdateRequestSampling] = OMIT,
481
+ show_annotation_history: typing.Optional[bool] = OMIT,
482
+ show_collab_predictions: typing.Optional[bool] = OMIT,
461
483
  show_ground_truth_first: typing.Optional[bool] = OMIT,
484
+ show_instruction: typing.Optional[bool] = OMIT,
462
485
  show_overlap_first: typing.Optional[bool] = OMIT,
463
- overlap_cohort_percentage: typing.Optional[int] = OMIT,
486
+ show_skip_button: typing.Optional[bool] = OMIT,
487
+ skip_queue: typing.Optional[PatchedLseProjectUpdateRequestSkipQueue] = OMIT,
464
488
  task_data_login: typing.Optional[str] = OMIT,
465
489
  task_data_password: typing.Optional[str] = OMIT,
466
- control_weights: typing.Optional[typing.Optional[typing.Any]] = OMIT,
467
- evaluate_predictions_automatically: typing.Optional[bool] = OMIT,
468
- skip_queue: typing.Optional[PatchedLseProjectUpdateRequestSkipQueue] = OMIT,
469
- reveal_preannotations_interactively: typing.Optional[bool] = OMIT,
470
- pinned_at: typing.Optional[dt.datetime] = OMIT,
490
+ title: typing.Optional[str] = OMIT,
471
491
  workspace: typing.Optional[int] = OMIT,
472
- review_settings: typing.Optional[ReviewSettingsRequest] = OMIT,
473
- assignment_settings: typing.Optional[AssignmentSettingsRequest] = OMIT,
474
- custom_script: typing.Optional[str] = OMIT,
475
- comment_classification_config: typing.Optional[str] = OMIT,
476
- require_comment_on_skip: typing.Optional[bool] = OMIT,
477
- custom_task_lock_ttl: typing.Optional[int] = OMIT,
478
- annotation_limit_count: typing.Optional[int] = OMIT,
479
- annotation_limit_percent: typing.Optional[str] = OMIT,
480
- pause_on_failed_annotator_evaluation: typing.Optional[bool] = OMIT,
481
- annotator_evaluation_minimum_score: typing.Optional[str] = OMIT,
482
- annotator_evaluation_minimum_tasks: typing.Optional[int] = OMIT,
483
492
  request_options: typing.Optional[RequestOptions] = None,
484
493
  ) -> LseProjectUpdate:
485
494
  """
@@ -489,106 +498,106 @@ class ProjectsClient:
489
498
  ----------
490
499
  id : int
491
500
 
492
- title : typing.Optional[str]
493
- Project name. Must be between 3 and 50 characters long.
501
+ annotation_limit_count : typing.Optional[int]
494
502
 
495
- description : typing.Optional[str]
496
- Project description
503
+ annotation_limit_percent : typing.Optional[str]
497
504
 
498
- label_config : typing.Optional[str]
499
- Label config in XML format. See more about it in documentation
505
+ annotator_evaluation_minimum_score : typing.Optional[str]
500
506
 
501
- expert_instruction : typing.Optional[str]
502
- Labeling instructions in HTML format
507
+ annotator_evaluation_minimum_tasks : typing.Optional[int]
503
508
 
504
- show_instruction : typing.Optional[bool]
505
- Show instructions to the annotator before they start
509
+ assignment_settings : typing.Optional[AssignmentSettingsRequest]
506
510
 
507
- show_skip_button : typing.Optional[bool]
508
- Show a skip button in interface and allow annotators to skip the task
511
+ color : typing.Optional[str]
509
512
 
510
- enable_empty_annotation : typing.Optional[bool]
511
- Allow annotators to submit empty annotations
513
+ comment_classification_config : typing.Optional[str]
512
514
 
513
- show_annotation_history : typing.Optional[bool]
514
- Show annotation history to annotator
515
+ control_weights : typing.Optional[typing.Optional[typing.Any]]
515
516
 
516
- organization : typing.Optional[int]
517
+ created_by : typing.Optional[UserSimpleRequest]
518
+ Project owner
517
519
 
518
- color : typing.Optional[str]
520
+ custom_script : typing.Optional[str]
519
521
 
520
- maximum_annotations : typing.Optional[int]
521
- Maximum number of annotations for one task. If the number of annotations per task is equal or greater to this value, the task is completed (is_labeled=True)
522
+ custom_task_lock_ttl : typing.Optional[int]
523
+ TTL in seconds for task reservations, on new and existing tasks
522
524
 
523
- is_published : typing.Optional[bool]
524
- Whether or not the project is published to annotators
525
+ description : typing.Optional[str]
526
+ Project description
525
527
 
526
- model_version : typing.Optional[str]
527
- Machine learning model version
528
+ enable_empty_annotation : typing.Optional[bool]
529
+ Allow annotators to submit empty annotations
530
+
531
+ evaluate_predictions_automatically : typing.Optional[bool]
532
+ Retrieve and display predictions when loading a task
533
+
534
+ expert_instruction : typing.Optional[str]
535
+ Labeling instructions in HTML format
528
536
 
529
537
  is_draft : typing.Optional[bool]
530
538
  Whether or not the project is in the middle of being created
531
539
 
532
- created_by : typing.Optional[UserSimpleRequest]
533
- Project owner
540
+ is_published : typing.Optional[bool]
541
+ Whether or not the project is published to annotators
534
542
 
535
- min_annotations_to_start_training : typing.Optional[int]
536
- Minimum number of completed tasks after which model training is started
543
+ label_config : typing.Optional[str]
544
+ Label config in XML format. See more about it in documentation
537
545
 
538
- show_collab_predictions : typing.Optional[bool]
539
- If set, the annotator can view model predictions
546
+ maximum_annotations : typing.Optional[int]
547
+ Maximum number of annotations for one task. If the number of annotations per task is equal or greater to this value, the task is completed (is_labeled=True)
540
548
 
541
- sampling : typing.Optional[PatchedLseProjectUpdateRequestSampling]
549
+ min_annotations_to_start_training : typing.Optional[int]
550
+ Minimum number of completed tasks after which model training is started
542
551
 
543
- show_ground_truth_first : typing.Optional[bool]
552
+ model_version : typing.Optional[str]
553
+ Machine learning model version
544
554
 
545
- show_overlap_first : typing.Optional[bool]
555
+ organization : typing.Optional[int]
546
556
 
547
557
  overlap_cohort_percentage : typing.Optional[int]
548
558
 
549
- task_data_login : typing.Optional[str]
550
- Task data credentials: login
551
-
552
- task_data_password : typing.Optional[str]
553
- Task data credentials: password
554
-
555
- control_weights : typing.Optional[typing.Optional[typing.Any]]
559
+ pause_on_failed_annotator_evaluation : typing.Optional[bool]
556
560
 
557
- evaluate_predictions_automatically : typing.Optional[bool]
558
- Retrieve and display predictions when loading a task
561
+ pinned_at : typing.Optional[dt.datetime]
562
+ Pinned date and time
559
563
 
560
- skip_queue : typing.Optional[PatchedLseProjectUpdateRequestSkipQueue]
564
+ require_comment_on_skip : typing.Optional[bool]
561
565
 
562
566
  reveal_preannotations_interactively : typing.Optional[bool]
563
567
  Reveal pre-annotations interactively
564
568
 
565
- pinned_at : typing.Optional[dt.datetime]
566
- Pinned date and time
569
+ review_settings : typing.Optional[ReviewSettingsRequest]
567
570
 
568
- workspace : typing.Optional[int]
571
+ sampling : typing.Optional[PatchedLseProjectUpdateRequestSampling]
569
572
 
570
- review_settings : typing.Optional[ReviewSettingsRequest]
573
+ show_annotation_history : typing.Optional[bool]
574
+ Show annotation history to annotator
571
575
 
572
- assignment_settings : typing.Optional[AssignmentSettingsRequest]
576
+ show_collab_predictions : typing.Optional[bool]
577
+ If set, the annotator can view model predictions
573
578
 
574
- custom_script : typing.Optional[str]
579
+ show_ground_truth_first : typing.Optional[bool]
575
580
 
576
- comment_classification_config : typing.Optional[str]
581
+ show_instruction : typing.Optional[bool]
582
+ Show instructions to the annotator before they start
577
583
 
578
- require_comment_on_skip : typing.Optional[bool]
584
+ show_overlap_first : typing.Optional[bool]
579
585
 
580
- custom_task_lock_ttl : typing.Optional[int]
581
- TTL in seconds for task reservations, on new and existing tasks
586
+ show_skip_button : typing.Optional[bool]
587
+ Show a skip button in interface and allow annotators to skip the task
582
588
 
583
- annotation_limit_count : typing.Optional[int]
589
+ skip_queue : typing.Optional[PatchedLseProjectUpdateRequestSkipQueue]
584
590
 
585
- annotation_limit_percent : typing.Optional[str]
591
+ task_data_login : typing.Optional[str]
592
+ Task data credentials: login
586
593
 
587
- pause_on_failed_annotator_evaluation : typing.Optional[bool]
594
+ task_data_password : typing.Optional[str]
595
+ Task data credentials: password
588
596
 
589
- annotator_evaluation_minimum_score : typing.Optional[str]
597
+ title : typing.Optional[str]
598
+ Project name. Must be between 3 and 50 characters long.
590
599
 
591
- annotator_evaluation_minimum_tasks : typing.Optional[int]
600
+ workspace : typing.Optional[int]
592
601
 
593
602
  request_options : typing.Optional[RequestOptions]
594
603
  Request-specific configuration.
@@ -613,56 +622,56 @@ class ProjectsClient:
613
622
  f"api/projects/{jsonable_encoder(id)}/",
614
623
  method="PATCH",
615
624
  json={
616
- "title": title,
617
- "description": description,
618
- "label_config": label_config,
619
- "expert_instruction": expert_instruction,
620
- "show_instruction": show_instruction,
621
- "show_skip_button": show_skip_button,
622
- "enable_empty_annotation": enable_empty_annotation,
623
- "show_annotation_history": show_annotation_history,
624
- "organization": organization,
625
+ "annotation_limit_count": annotation_limit_count,
626
+ "annotation_limit_percent": annotation_limit_percent,
627
+ "annotator_evaluation_minimum_score": annotator_evaluation_minimum_score,
628
+ "annotator_evaluation_minimum_tasks": annotator_evaluation_minimum_tasks,
629
+ "assignment_settings": convert_and_respect_annotation_metadata(
630
+ object_=assignment_settings, annotation=AssignmentSettingsRequest, direction="write"
631
+ ),
625
632
  "color": color,
626
- "maximum_annotations": maximum_annotations,
627
- "is_published": is_published,
628
- "model_version": model_version,
629
- "is_draft": is_draft,
633
+ "comment_classification_config": comment_classification_config,
634
+ "control_weights": control_weights,
630
635
  "created_by": convert_and_respect_annotation_metadata(
631
636
  object_=created_by, annotation=UserSimpleRequest, direction="write"
632
637
  ),
638
+ "custom_script": custom_script,
639
+ "custom_task_lock_ttl": custom_task_lock_ttl,
640
+ "description": description,
641
+ "enable_empty_annotation": enable_empty_annotation,
642
+ "evaluate_predictions_automatically": evaluate_predictions_automatically,
643
+ "expert_instruction": expert_instruction,
644
+ "is_draft": is_draft,
645
+ "is_published": is_published,
646
+ "label_config": label_config,
647
+ "maximum_annotations": maximum_annotations,
633
648
  "min_annotations_to_start_training": min_annotations_to_start_training,
634
- "show_collab_predictions": show_collab_predictions,
649
+ "model_version": model_version,
650
+ "organization": organization,
651
+ "overlap_cohort_percentage": overlap_cohort_percentage,
652
+ "pause_on_failed_annotator_evaluation": pause_on_failed_annotator_evaluation,
653
+ "pinned_at": pinned_at,
654
+ "require_comment_on_skip": require_comment_on_skip,
655
+ "reveal_preannotations_interactively": reveal_preannotations_interactively,
656
+ "review_settings": convert_and_respect_annotation_metadata(
657
+ object_=review_settings, annotation=ReviewSettingsRequest, direction="write"
658
+ ),
635
659
  "sampling": convert_and_respect_annotation_metadata(
636
660
  object_=sampling, annotation=PatchedLseProjectUpdateRequestSampling, direction="write"
637
661
  ),
662
+ "show_annotation_history": show_annotation_history,
663
+ "show_collab_predictions": show_collab_predictions,
638
664
  "show_ground_truth_first": show_ground_truth_first,
665
+ "show_instruction": show_instruction,
639
666
  "show_overlap_first": show_overlap_first,
640
- "overlap_cohort_percentage": overlap_cohort_percentage,
641
- "task_data_login": task_data_login,
642
- "task_data_password": task_data_password,
643
- "control_weights": control_weights,
644
- "evaluate_predictions_automatically": evaluate_predictions_automatically,
667
+ "show_skip_button": show_skip_button,
645
668
  "skip_queue": convert_and_respect_annotation_metadata(
646
669
  object_=skip_queue, annotation=PatchedLseProjectUpdateRequestSkipQueue, direction="write"
647
670
  ),
648
- "reveal_preannotations_interactively": reveal_preannotations_interactively,
649
- "pinned_at": pinned_at,
671
+ "task_data_login": task_data_login,
672
+ "task_data_password": task_data_password,
673
+ "title": title,
650
674
  "workspace": workspace,
651
- "review_settings": convert_and_respect_annotation_metadata(
652
- object_=review_settings, annotation=ReviewSettingsRequest, direction="write"
653
- ),
654
- "assignment_settings": convert_and_respect_annotation_metadata(
655
- object_=assignment_settings, annotation=AssignmentSettingsRequest, direction="write"
656
- ),
657
- "custom_script": custom_script,
658
- "comment_classification_config": comment_classification_config,
659
- "require_comment_on_skip": require_comment_on_skip,
660
- "custom_task_lock_ttl": custom_task_lock_ttl,
661
- "annotation_limit_count": annotation_limit_count,
662
- "annotation_limit_percent": annotation_limit_percent,
663
- "pause_on_failed_annotator_evaluation": pause_on_failed_annotator_evaluation,
664
- "annotator_evaluation_minimum_score": annotator_evaluation_minimum_score,
665
- "annotator_evaluation_minimum_tasks": annotator_evaluation_minimum_tasks,
666
675
  },
667
676
  headers={
668
677
  "content-type": "application/json",
@@ -689,8 +698,8 @@ class ProjectsClient:
689
698
  id: int,
690
699
  *,
691
700
  mode: ModeEnum,
692
- workspace: int,
693
701
  title: str,
702
+ workspace: int,
694
703
  description: typing.Optional[str] = OMIT,
695
704
  request_options: typing.Optional[RequestOptions] = None,
696
705
  ) -> ProjectsDuplicateResponse:
@@ -707,12 +716,12 @@ class ProjectsClient:
707
716
  * `settings` - Only settings
708
717
  * `settings,data` - Settings and tasks
709
718
 
710
- workspace : int
711
- Workspace, where to place duplicated project
712
-
713
719
  title : str
714
720
  Title of duplicated project
715
721
 
722
+ workspace : int
723
+ Workspace, where to place duplicated project
724
+
716
725
  description : typing.Optional[str]
717
726
  Description of duplicated project
718
727
 
@@ -734,18 +743,18 @@ class ProjectsClient:
734
743
  client.projects.duplicate(
735
744
  id=1,
736
745
  mode="settings",
737
- workspace=1,
738
746
  title="title",
747
+ workspace=1,
739
748
  )
740
749
  """
741
750
  _response = self._client_wrapper.httpx_client.request(
742
751
  f"api/projects/{jsonable_encoder(id)}/duplicate/",
743
752
  method="POST",
744
753
  json={
754
+ "description": description,
745
755
  "mode": mode,
746
- "workspace": workspace,
747
756
  "title": title,
748
- "description": description,
757
+ "workspace": workspace,
749
758
  },
750
759
  headers={
751
760
  "content-type": "application/json",
@@ -968,6 +977,7 @@ class AsyncProjectsClient:
968
977
  self._client_wrapper = client_wrapper
969
978
  self.exports = AsyncExportsClient(client_wrapper=self._client_wrapper)
970
979
  self.stats = AsyncStatsClient(client_wrapper=self._client_wrapper)
980
+ self.assignments = AsyncAssignmentsClient(client_wrapper=self._client_wrapper)
971
981
  self.pauses = AsyncPausesClient(client_wrapper=self._client_wrapper)
972
982
 
973
983
  async def list(
@@ -976,6 +986,7 @@ class AsyncProjectsClient:
976
986
  filter: typing.Optional[ProjectsListRequestFilter] = None,
977
987
  ids: typing.Optional[str] = None,
978
988
  include: typing.Optional[str] = None,
989
+ members_limit: typing.Optional[int] = None,
979
990
  ordering: typing.Optional[str] = None,
980
991
  page: typing.Optional[int] = None,
981
992
  page_size: typing.Optional[int] = None,
@@ -997,6 +1008,9 @@ class AsyncProjectsClient:
997
1008
  include : typing.Optional[str]
998
1009
  Comma-separated list of count fields to include in the response to optimize performance. Available fields: task_number, finished_task_number, total_predictions_number, total_annotations_number, num_tasks_with_annotations, useful_annotation_number, ground_truth_number, skipped_annotations_number. If not specified, all count fields are included.
999
1010
 
1011
+ members_limit : typing.Optional[int]
1012
+ Maximum number of members to return.
1013
+
1000
1014
  ordering : typing.Optional[str]
1001
1015
  Which field to use when ordering the results.
1002
1016
 
@@ -1050,6 +1064,7 @@ class AsyncProjectsClient:
1050
1064
  "filter": filter,
1051
1065
  "ids": ids,
1052
1066
  "include": include,
1067
+ "members_limit": members_limit,
1053
1068
  "ordering": ordering,
1054
1069
  "page": page,
1055
1070
  "page_size": page_size,
@@ -1072,6 +1087,7 @@ class AsyncProjectsClient:
1072
1087
  filter=filter,
1073
1088
  ids=ids,
1074
1089
  include=include,
1090
+ members_limit=members_limit,
1075
1091
  ordering=ordering,
1076
1092
  page=page + 1,
1077
1093
  page_size=page_size,
@@ -1089,34 +1105,34 @@ class AsyncProjectsClient:
1089
1105
  async def create(
1090
1106
  self,
1091
1107
  *,
1092
- title: typing.Optional[str] = OMIT,
1108
+ color: typing.Optional[str] = OMIT,
1109
+ control_weights: typing.Optional[typing.Optional[typing.Any]] = OMIT,
1110
+ created_by: typing.Optional[UserSimpleRequest] = OMIT,
1093
1111
  description: typing.Optional[str] = OMIT,
1094
- label_config: typing.Optional[str] = OMIT,
1095
- expert_instruction: typing.Optional[str] = OMIT,
1096
- show_instruction: typing.Optional[bool] = OMIT,
1097
- show_skip_button: typing.Optional[bool] = OMIT,
1098
1112
  enable_empty_annotation: typing.Optional[bool] = OMIT,
1099
- show_annotation_history: typing.Optional[bool] = OMIT,
1100
- organization: typing.Optional[int] = OMIT,
1101
- color: typing.Optional[str] = OMIT,
1102
- maximum_annotations: typing.Optional[int] = OMIT,
1103
- is_published: typing.Optional[bool] = OMIT,
1104
- model_version: typing.Optional[str] = OMIT,
1113
+ evaluate_predictions_automatically: typing.Optional[bool] = OMIT,
1114
+ expert_instruction: typing.Optional[str] = OMIT,
1105
1115
  is_draft: typing.Optional[bool] = OMIT,
1106
- created_by: typing.Optional[UserSimpleRequest] = OMIT,
1116
+ is_published: typing.Optional[bool] = OMIT,
1117
+ label_config: typing.Optional[str] = OMIT,
1118
+ maximum_annotations: typing.Optional[int] = OMIT,
1107
1119
  min_annotations_to_start_training: typing.Optional[int] = OMIT,
1108
- show_collab_predictions: typing.Optional[bool] = OMIT,
1120
+ model_version: typing.Optional[str] = OMIT,
1121
+ organization: typing.Optional[int] = OMIT,
1122
+ overlap_cohort_percentage: typing.Optional[int] = OMIT,
1123
+ pinned_at: typing.Optional[dt.datetime] = OMIT,
1124
+ reveal_preannotations_interactively: typing.Optional[bool] = OMIT,
1109
1125
  sampling: typing.Optional[LseProjectCreateRequestSampling] = OMIT,
1126
+ show_annotation_history: typing.Optional[bool] = OMIT,
1127
+ show_collab_predictions: typing.Optional[bool] = OMIT,
1110
1128
  show_ground_truth_first: typing.Optional[bool] = OMIT,
1129
+ show_instruction: typing.Optional[bool] = OMIT,
1111
1130
  show_overlap_first: typing.Optional[bool] = OMIT,
1112
- overlap_cohort_percentage: typing.Optional[int] = OMIT,
1131
+ show_skip_button: typing.Optional[bool] = OMIT,
1132
+ skip_queue: typing.Optional[LseProjectCreateRequestSkipQueue] = OMIT,
1113
1133
  task_data_login: typing.Optional[str] = OMIT,
1114
1134
  task_data_password: typing.Optional[str] = OMIT,
1115
- control_weights: typing.Optional[typing.Optional[typing.Any]] = OMIT,
1116
- evaluate_predictions_automatically: typing.Optional[bool] = OMIT,
1117
- skip_queue: typing.Optional[LseProjectCreateRequestSkipQueue] = OMIT,
1118
- reveal_preannotations_interactively: typing.Optional[bool] = OMIT,
1119
- pinned_at: typing.Optional[dt.datetime] = OMIT,
1135
+ title: typing.Optional[str] = OMIT,
1120
1136
  workspace: typing.Optional[int] = OMIT,
1121
1137
  request_options: typing.Optional[RequestOptions] = None,
1122
1138
  ) -> LseProjectCreate:
@@ -1125,62 +1141,72 @@ class AsyncProjectsClient:
1125
1141
 
1126
1142
  Parameters
1127
1143
  ----------
1128
- title : typing.Optional[str]
1129
- Project name. Must be between 3 and 50 characters long.
1144
+ color : typing.Optional[str]
1145
+
1146
+ control_weights : typing.Optional[typing.Optional[typing.Any]]
1147
+
1148
+ created_by : typing.Optional[UserSimpleRequest]
1149
+ Project owner
1130
1150
 
1131
1151
  description : typing.Optional[str]
1132
1152
  Project description
1133
1153
 
1134
- label_config : typing.Optional[str]
1135
- Label config in XML format. See more about it in documentation
1154
+ enable_empty_annotation : typing.Optional[bool]
1155
+ Allow annotators to submit empty annotations
1156
+
1157
+ evaluate_predictions_automatically : typing.Optional[bool]
1158
+ Retrieve and display predictions when loading a task
1136
1159
 
1137
1160
  expert_instruction : typing.Optional[str]
1138
1161
  Labeling instructions in HTML format
1139
1162
 
1140
- show_instruction : typing.Optional[bool]
1141
- Show instructions to the annotator before they start
1142
-
1143
- show_skip_button : typing.Optional[bool]
1144
- Show a skip button in interface and allow annotators to skip the task
1145
-
1146
- enable_empty_annotation : typing.Optional[bool]
1147
- Allow annotators to submit empty annotations
1148
-
1149
- show_annotation_history : typing.Optional[bool]
1150
- Show annotation history to annotator
1163
+ is_draft : typing.Optional[bool]
1164
+ Whether or not the project is in the middle of being created
1151
1165
 
1152
- organization : typing.Optional[int]
1166
+ is_published : typing.Optional[bool]
1167
+ Whether or not the project is published to annotators
1153
1168
 
1154
- color : typing.Optional[str]
1169
+ label_config : typing.Optional[str]
1170
+ Label config in XML format. See more about it in documentation
1155
1171
 
1156
1172
  maximum_annotations : typing.Optional[int]
1157
1173
  Maximum number of annotations for one task. If the number of annotations per task is equal or greater to this value, the task is completed (is_labeled=True)
1158
1174
 
1159
- is_published : typing.Optional[bool]
1160
- Whether or not the project is published to annotators
1175
+ min_annotations_to_start_training : typing.Optional[int]
1176
+ Minimum number of completed tasks after which model training is started
1161
1177
 
1162
1178
  model_version : typing.Optional[str]
1163
1179
  Machine learning model version
1164
1180
 
1165
- is_draft : typing.Optional[bool]
1166
- Whether or not the project is in the middle of being created
1181
+ organization : typing.Optional[int]
1167
1182
 
1168
- created_by : typing.Optional[UserSimpleRequest]
1169
- Project owner
1183
+ overlap_cohort_percentage : typing.Optional[int]
1170
1184
 
1171
- min_annotations_to_start_training : typing.Optional[int]
1172
- Minimum number of completed tasks after which model training is started
1185
+ pinned_at : typing.Optional[dt.datetime]
1186
+ Pinned date and time
1173
1187
 
1174
- show_collab_predictions : typing.Optional[bool]
1175
- If set, the annotator can view model predictions
1188
+ reveal_preannotations_interactively : typing.Optional[bool]
1189
+ Reveal pre-annotations interactively
1176
1190
 
1177
1191
  sampling : typing.Optional[LseProjectCreateRequestSampling]
1178
1192
 
1193
+ show_annotation_history : typing.Optional[bool]
1194
+ Show annotation history to annotator
1195
+
1196
+ show_collab_predictions : typing.Optional[bool]
1197
+ If set, the annotator can view model predictions
1198
+
1179
1199
  show_ground_truth_first : typing.Optional[bool]
1180
1200
 
1201
+ show_instruction : typing.Optional[bool]
1202
+ Show instructions to the annotator before they start
1203
+
1181
1204
  show_overlap_first : typing.Optional[bool]
1182
1205
 
1183
- overlap_cohort_percentage : typing.Optional[int]
1206
+ show_skip_button : typing.Optional[bool]
1207
+ Show a skip button in interface and allow annotators to skip the task
1208
+
1209
+ skip_queue : typing.Optional[LseProjectCreateRequestSkipQueue]
1184
1210
 
1185
1211
  task_data_login : typing.Optional[str]
1186
1212
  Task data credentials: login
@@ -1188,18 +1214,8 @@ class AsyncProjectsClient:
1188
1214
  task_data_password : typing.Optional[str]
1189
1215
  Task data credentials: password
1190
1216
 
1191
- control_weights : typing.Optional[typing.Optional[typing.Any]]
1192
-
1193
- evaluate_predictions_automatically : typing.Optional[bool]
1194
- Retrieve and display predictions when loading a task
1195
-
1196
- skip_queue : typing.Optional[LseProjectCreateRequestSkipQueue]
1197
-
1198
- reveal_preannotations_interactively : typing.Optional[bool]
1199
- Reveal pre-annotations interactively
1200
-
1201
- pinned_at : typing.Optional[dt.datetime]
1202
- Pinned date and time
1217
+ title : typing.Optional[str]
1218
+ Project name. Must be between 3 and 50 characters long.
1203
1219
 
1204
1220
  workspace : typing.Optional[int]
1205
1221
 
@@ -1232,40 +1248,40 @@ class AsyncProjectsClient:
1232
1248
  "api/projects/",
1233
1249
  method="POST",
1234
1250
  json={
1235
- "title": title,
1236
- "description": description,
1237
- "label_config": label_config,
1238
- "expert_instruction": expert_instruction,
1239
- "show_instruction": show_instruction,
1240
- "show_skip_button": show_skip_button,
1241
- "enable_empty_annotation": enable_empty_annotation,
1242
- "show_annotation_history": show_annotation_history,
1243
- "organization": organization,
1244
1251
  "color": color,
1245
- "maximum_annotations": maximum_annotations,
1246
- "is_published": is_published,
1247
- "model_version": model_version,
1248
- "is_draft": is_draft,
1252
+ "control_weights": control_weights,
1249
1253
  "created_by": convert_and_respect_annotation_metadata(
1250
1254
  object_=created_by, annotation=UserSimpleRequest, direction="write"
1251
1255
  ),
1256
+ "description": description,
1257
+ "enable_empty_annotation": enable_empty_annotation,
1258
+ "evaluate_predictions_automatically": evaluate_predictions_automatically,
1259
+ "expert_instruction": expert_instruction,
1260
+ "is_draft": is_draft,
1261
+ "is_published": is_published,
1262
+ "label_config": label_config,
1263
+ "maximum_annotations": maximum_annotations,
1252
1264
  "min_annotations_to_start_training": min_annotations_to_start_training,
1253
- "show_collab_predictions": show_collab_predictions,
1265
+ "model_version": model_version,
1266
+ "organization": organization,
1267
+ "overlap_cohort_percentage": overlap_cohort_percentage,
1268
+ "pinned_at": pinned_at,
1269
+ "reveal_preannotations_interactively": reveal_preannotations_interactively,
1254
1270
  "sampling": convert_and_respect_annotation_metadata(
1255
1271
  object_=sampling, annotation=LseProjectCreateRequestSampling, direction="write"
1256
1272
  ),
1273
+ "show_annotation_history": show_annotation_history,
1274
+ "show_collab_predictions": show_collab_predictions,
1257
1275
  "show_ground_truth_first": show_ground_truth_first,
1276
+ "show_instruction": show_instruction,
1258
1277
  "show_overlap_first": show_overlap_first,
1259
- "overlap_cohort_percentage": overlap_cohort_percentage,
1260
- "task_data_login": task_data_login,
1261
- "task_data_password": task_data_password,
1262
- "control_weights": control_weights,
1263
- "evaluate_predictions_automatically": evaluate_predictions_automatically,
1278
+ "show_skip_button": show_skip_button,
1264
1279
  "skip_queue": convert_and_respect_annotation_metadata(
1265
1280
  object_=skip_queue, annotation=LseProjectCreateRequestSkipQueue, direction="write"
1266
1281
  ),
1267
- "reveal_preannotations_interactively": reveal_preannotations_interactively,
1268
- "pinned_at": pinned_at,
1282
+ "task_data_login": task_data_login,
1283
+ "task_data_password": task_data_password,
1284
+ "title": title,
1269
1285
  "workspace": workspace,
1270
1286
  },
1271
1287
  headers={
@@ -1393,46 +1409,46 @@ class AsyncProjectsClient:
1393
1409
  self,
1394
1410
  id: int,
1395
1411
  *,
1396
- title: typing.Optional[str] = OMIT,
1412
+ annotation_limit_count: typing.Optional[int] = OMIT,
1413
+ annotation_limit_percent: typing.Optional[str] = OMIT,
1414
+ annotator_evaluation_minimum_score: typing.Optional[str] = OMIT,
1415
+ annotator_evaluation_minimum_tasks: typing.Optional[int] = OMIT,
1416
+ assignment_settings: typing.Optional[AssignmentSettingsRequest] = OMIT,
1417
+ color: typing.Optional[str] = OMIT,
1418
+ comment_classification_config: typing.Optional[str] = OMIT,
1419
+ control_weights: typing.Optional[typing.Optional[typing.Any]] = OMIT,
1420
+ created_by: typing.Optional[UserSimpleRequest] = OMIT,
1421
+ custom_script: typing.Optional[str] = OMIT,
1422
+ custom_task_lock_ttl: typing.Optional[int] = OMIT,
1397
1423
  description: typing.Optional[str] = OMIT,
1398
- label_config: typing.Optional[str] = OMIT,
1399
- expert_instruction: typing.Optional[str] = OMIT,
1400
- show_instruction: typing.Optional[bool] = OMIT,
1401
- show_skip_button: typing.Optional[bool] = OMIT,
1402
1424
  enable_empty_annotation: typing.Optional[bool] = OMIT,
1403
- show_annotation_history: typing.Optional[bool] = OMIT,
1404
- organization: typing.Optional[int] = OMIT,
1405
- color: typing.Optional[str] = OMIT,
1406
- maximum_annotations: typing.Optional[int] = OMIT,
1407
- is_published: typing.Optional[bool] = OMIT,
1408
- model_version: typing.Optional[str] = OMIT,
1425
+ evaluate_predictions_automatically: typing.Optional[bool] = OMIT,
1426
+ expert_instruction: typing.Optional[str] = OMIT,
1409
1427
  is_draft: typing.Optional[bool] = OMIT,
1410
- created_by: typing.Optional[UserSimpleRequest] = OMIT,
1428
+ is_published: typing.Optional[bool] = OMIT,
1429
+ label_config: typing.Optional[str] = OMIT,
1430
+ maximum_annotations: typing.Optional[int] = OMIT,
1411
1431
  min_annotations_to_start_training: typing.Optional[int] = OMIT,
1412
- show_collab_predictions: typing.Optional[bool] = OMIT,
1432
+ model_version: typing.Optional[str] = OMIT,
1433
+ organization: typing.Optional[int] = OMIT,
1434
+ overlap_cohort_percentage: typing.Optional[int] = OMIT,
1435
+ pause_on_failed_annotator_evaluation: typing.Optional[bool] = OMIT,
1436
+ pinned_at: typing.Optional[dt.datetime] = OMIT,
1437
+ require_comment_on_skip: typing.Optional[bool] = OMIT,
1438
+ reveal_preannotations_interactively: typing.Optional[bool] = OMIT,
1439
+ review_settings: typing.Optional[ReviewSettingsRequest] = OMIT,
1413
1440
  sampling: typing.Optional[PatchedLseProjectUpdateRequestSampling] = OMIT,
1441
+ show_annotation_history: typing.Optional[bool] = OMIT,
1442
+ show_collab_predictions: typing.Optional[bool] = OMIT,
1414
1443
  show_ground_truth_first: typing.Optional[bool] = OMIT,
1444
+ show_instruction: typing.Optional[bool] = OMIT,
1415
1445
  show_overlap_first: typing.Optional[bool] = OMIT,
1416
- overlap_cohort_percentage: typing.Optional[int] = OMIT,
1446
+ show_skip_button: typing.Optional[bool] = OMIT,
1447
+ skip_queue: typing.Optional[PatchedLseProjectUpdateRequestSkipQueue] = OMIT,
1417
1448
  task_data_login: typing.Optional[str] = OMIT,
1418
1449
  task_data_password: typing.Optional[str] = OMIT,
1419
- control_weights: typing.Optional[typing.Optional[typing.Any]] = OMIT,
1420
- evaluate_predictions_automatically: typing.Optional[bool] = OMIT,
1421
- skip_queue: typing.Optional[PatchedLseProjectUpdateRequestSkipQueue] = OMIT,
1422
- reveal_preannotations_interactively: typing.Optional[bool] = OMIT,
1423
- pinned_at: typing.Optional[dt.datetime] = OMIT,
1450
+ title: typing.Optional[str] = OMIT,
1424
1451
  workspace: typing.Optional[int] = OMIT,
1425
- review_settings: typing.Optional[ReviewSettingsRequest] = OMIT,
1426
- assignment_settings: typing.Optional[AssignmentSettingsRequest] = OMIT,
1427
- custom_script: typing.Optional[str] = OMIT,
1428
- comment_classification_config: typing.Optional[str] = OMIT,
1429
- require_comment_on_skip: typing.Optional[bool] = OMIT,
1430
- custom_task_lock_ttl: typing.Optional[int] = OMIT,
1431
- annotation_limit_count: typing.Optional[int] = OMIT,
1432
- annotation_limit_percent: typing.Optional[str] = OMIT,
1433
- pause_on_failed_annotator_evaluation: typing.Optional[bool] = OMIT,
1434
- annotator_evaluation_minimum_score: typing.Optional[str] = OMIT,
1435
- annotator_evaluation_minimum_tasks: typing.Optional[int] = OMIT,
1436
1452
  request_options: typing.Optional[RequestOptions] = None,
1437
1453
  ) -> LseProjectUpdate:
1438
1454
  """
@@ -1442,106 +1458,106 @@ class AsyncProjectsClient:
1442
1458
  ----------
1443
1459
  id : int
1444
1460
 
1445
- title : typing.Optional[str]
1446
- Project name. Must be between 3 and 50 characters long.
1461
+ annotation_limit_count : typing.Optional[int]
1447
1462
 
1448
- description : typing.Optional[str]
1449
- Project description
1463
+ annotation_limit_percent : typing.Optional[str]
1450
1464
 
1451
- label_config : typing.Optional[str]
1452
- Label config in XML format. See more about it in documentation
1465
+ annotator_evaluation_minimum_score : typing.Optional[str]
1453
1466
 
1454
- expert_instruction : typing.Optional[str]
1455
- Labeling instructions in HTML format
1467
+ annotator_evaluation_minimum_tasks : typing.Optional[int]
1456
1468
 
1457
- show_instruction : typing.Optional[bool]
1458
- Show instructions to the annotator before they start
1469
+ assignment_settings : typing.Optional[AssignmentSettingsRequest]
1459
1470
 
1460
- show_skip_button : typing.Optional[bool]
1461
- Show a skip button in interface and allow annotators to skip the task
1471
+ color : typing.Optional[str]
1462
1472
 
1463
- enable_empty_annotation : typing.Optional[bool]
1464
- Allow annotators to submit empty annotations
1473
+ comment_classification_config : typing.Optional[str]
1465
1474
 
1466
- show_annotation_history : typing.Optional[bool]
1467
- Show annotation history to annotator
1475
+ control_weights : typing.Optional[typing.Optional[typing.Any]]
1468
1476
 
1469
- organization : typing.Optional[int]
1477
+ created_by : typing.Optional[UserSimpleRequest]
1478
+ Project owner
1470
1479
 
1471
- color : typing.Optional[str]
1480
+ custom_script : typing.Optional[str]
1472
1481
 
1473
- maximum_annotations : typing.Optional[int]
1474
- Maximum number of annotations for one task. If the number of annotations per task is equal or greater to this value, the task is completed (is_labeled=True)
1482
+ custom_task_lock_ttl : typing.Optional[int]
1483
+ TTL in seconds for task reservations, on new and existing tasks
1475
1484
 
1476
- is_published : typing.Optional[bool]
1477
- Whether or not the project is published to annotators
1485
+ description : typing.Optional[str]
1486
+ Project description
1478
1487
 
1479
- model_version : typing.Optional[str]
1480
- Machine learning model version
1488
+ enable_empty_annotation : typing.Optional[bool]
1489
+ Allow annotators to submit empty annotations
1490
+
1491
+ evaluate_predictions_automatically : typing.Optional[bool]
1492
+ Retrieve and display predictions when loading a task
1493
+
1494
+ expert_instruction : typing.Optional[str]
1495
+ Labeling instructions in HTML format
1481
1496
 
1482
1497
  is_draft : typing.Optional[bool]
1483
1498
  Whether or not the project is in the middle of being created
1484
1499
 
1485
- created_by : typing.Optional[UserSimpleRequest]
1486
- Project owner
1500
+ is_published : typing.Optional[bool]
1501
+ Whether or not the project is published to annotators
1487
1502
 
1488
- min_annotations_to_start_training : typing.Optional[int]
1489
- Minimum number of completed tasks after which model training is started
1503
+ label_config : typing.Optional[str]
1504
+ Label config in XML format. See more about it in documentation
1490
1505
 
1491
- show_collab_predictions : typing.Optional[bool]
1492
- If set, the annotator can view model predictions
1506
+ maximum_annotations : typing.Optional[int]
1507
+ Maximum number of annotations for one task. If the number of annotations per task is equal or greater to this value, the task is completed (is_labeled=True)
1493
1508
 
1494
- sampling : typing.Optional[PatchedLseProjectUpdateRequestSampling]
1509
+ min_annotations_to_start_training : typing.Optional[int]
1510
+ Minimum number of completed tasks after which model training is started
1495
1511
 
1496
- show_ground_truth_first : typing.Optional[bool]
1512
+ model_version : typing.Optional[str]
1513
+ Machine learning model version
1497
1514
 
1498
- show_overlap_first : typing.Optional[bool]
1515
+ organization : typing.Optional[int]
1499
1516
 
1500
1517
  overlap_cohort_percentage : typing.Optional[int]
1501
1518
 
1502
- task_data_login : typing.Optional[str]
1503
- Task data credentials: login
1504
-
1505
- task_data_password : typing.Optional[str]
1506
- Task data credentials: password
1507
-
1508
- control_weights : typing.Optional[typing.Optional[typing.Any]]
1519
+ pause_on_failed_annotator_evaluation : typing.Optional[bool]
1509
1520
 
1510
- evaluate_predictions_automatically : typing.Optional[bool]
1511
- Retrieve and display predictions when loading a task
1521
+ pinned_at : typing.Optional[dt.datetime]
1522
+ Pinned date and time
1512
1523
 
1513
- skip_queue : typing.Optional[PatchedLseProjectUpdateRequestSkipQueue]
1524
+ require_comment_on_skip : typing.Optional[bool]
1514
1525
 
1515
1526
  reveal_preannotations_interactively : typing.Optional[bool]
1516
1527
  Reveal pre-annotations interactively
1517
1528
 
1518
- pinned_at : typing.Optional[dt.datetime]
1519
- Pinned date and time
1529
+ review_settings : typing.Optional[ReviewSettingsRequest]
1520
1530
 
1521
- workspace : typing.Optional[int]
1531
+ sampling : typing.Optional[PatchedLseProjectUpdateRequestSampling]
1522
1532
 
1523
- review_settings : typing.Optional[ReviewSettingsRequest]
1533
+ show_annotation_history : typing.Optional[bool]
1534
+ Show annotation history to annotator
1524
1535
 
1525
- assignment_settings : typing.Optional[AssignmentSettingsRequest]
1536
+ show_collab_predictions : typing.Optional[bool]
1537
+ If set, the annotator can view model predictions
1526
1538
 
1527
- custom_script : typing.Optional[str]
1539
+ show_ground_truth_first : typing.Optional[bool]
1528
1540
 
1529
- comment_classification_config : typing.Optional[str]
1541
+ show_instruction : typing.Optional[bool]
1542
+ Show instructions to the annotator before they start
1530
1543
 
1531
- require_comment_on_skip : typing.Optional[bool]
1544
+ show_overlap_first : typing.Optional[bool]
1532
1545
 
1533
- custom_task_lock_ttl : typing.Optional[int]
1534
- TTL in seconds for task reservations, on new and existing tasks
1546
+ show_skip_button : typing.Optional[bool]
1547
+ Show a skip button in interface and allow annotators to skip the task
1535
1548
 
1536
- annotation_limit_count : typing.Optional[int]
1549
+ skip_queue : typing.Optional[PatchedLseProjectUpdateRequestSkipQueue]
1537
1550
 
1538
- annotation_limit_percent : typing.Optional[str]
1551
+ task_data_login : typing.Optional[str]
1552
+ Task data credentials: login
1539
1553
 
1540
- pause_on_failed_annotator_evaluation : typing.Optional[bool]
1554
+ task_data_password : typing.Optional[str]
1555
+ Task data credentials: password
1541
1556
 
1542
- annotator_evaluation_minimum_score : typing.Optional[str]
1557
+ title : typing.Optional[str]
1558
+ Project name. Must be between 3 and 50 characters long.
1543
1559
 
1544
- annotator_evaluation_minimum_tasks : typing.Optional[int]
1560
+ workspace : typing.Optional[int]
1545
1561
 
1546
1562
  request_options : typing.Optional[RequestOptions]
1547
1563
  Request-specific configuration.
@@ -1574,56 +1590,56 @@ class AsyncProjectsClient:
1574
1590
  f"api/projects/{jsonable_encoder(id)}/",
1575
1591
  method="PATCH",
1576
1592
  json={
1577
- "title": title,
1578
- "description": description,
1579
- "label_config": label_config,
1580
- "expert_instruction": expert_instruction,
1581
- "show_instruction": show_instruction,
1582
- "show_skip_button": show_skip_button,
1583
- "enable_empty_annotation": enable_empty_annotation,
1584
- "show_annotation_history": show_annotation_history,
1585
- "organization": organization,
1593
+ "annotation_limit_count": annotation_limit_count,
1594
+ "annotation_limit_percent": annotation_limit_percent,
1595
+ "annotator_evaluation_minimum_score": annotator_evaluation_minimum_score,
1596
+ "annotator_evaluation_minimum_tasks": annotator_evaluation_minimum_tasks,
1597
+ "assignment_settings": convert_and_respect_annotation_metadata(
1598
+ object_=assignment_settings, annotation=AssignmentSettingsRequest, direction="write"
1599
+ ),
1586
1600
  "color": color,
1587
- "maximum_annotations": maximum_annotations,
1588
- "is_published": is_published,
1589
- "model_version": model_version,
1590
- "is_draft": is_draft,
1601
+ "comment_classification_config": comment_classification_config,
1602
+ "control_weights": control_weights,
1591
1603
  "created_by": convert_and_respect_annotation_metadata(
1592
1604
  object_=created_by, annotation=UserSimpleRequest, direction="write"
1593
1605
  ),
1606
+ "custom_script": custom_script,
1607
+ "custom_task_lock_ttl": custom_task_lock_ttl,
1608
+ "description": description,
1609
+ "enable_empty_annotation": enable_empty_annotation,
1610
+ "evaluate_predictions_automatically": evaluate_predictions_automatically,
1611
+ "expert_instruction": expert_instruction,
1612
+ "is_draft": is_draft,
1613
+ "is_published": is_published,
1614
+ "label_config": label_config,
1615
+ "maximum_annotations": maximum_annotations,
1594
1616
  "min_annotations_to_start_training": min_annotations_to_start_training,
1595
- "show_collab_predictions": show_collab_predictions,
1617
+ "model_version": model_version,
1618
+ "organization": organization,
1619
+ "overlap_cohort_percentage": overlap_cohort_percentage,
1620
+ "pause_on_failed_annotator_evaluation": pause_on_failed_annotator_evaluation,
1621
+ "pinned_at": pinned_at,
1622
+ "require_comment_on_skip": require_comment_on_skip,
1623
+ "reveal_preannotations_interactively": reveal_preannotations_interactively,
1624
+ "review_settings": convert_and_respect_annotation_metadata(
1625
+ object_=review_settings, annotation=ReviewSettingsRequest, direction="write"
1626
+ ),
1596
1627
  "sampling": convert_and_respect_annotation_metadata(
1597
1628
  object_=sampling, annotation=PatchedLseProjectUpdateRequestSampling, direction="write"
1598
1629
  ),
1630
+ "show_annotation_history": show_annotation_history,
1631
+ "show_collab_predictions": show_collab_predictions,
1599
1632
  "show_ground_truth_first": show_ground_truth_first,
1633
+ "show_instruction": show_instruction,
1600
1634
  "show_overlap_first": show_overlap_first,
1601
- "overlap_cohort_percentage": overlap_cohort_percentage,
1602
- "task_data_login": task_data_login,
1603
- "task_data_password": task_data_password,
1604
- "control_weights": control_weights,
1605
- "evaluate_predictions_automatically": evaluate_predictions_automatically,
1635
+ "show_skip_button": show_skip_button,
1606
1636
  "skip_queue": convert_and_respect_annotation_metadata(
1607
1637
  object_=skip_queue, annotation=PatchedLseProjectUpdateRequestSkipQueue, direction="write"
1608
1638
  ),
1609
- "reveal_preannotations_interactively": reveal_preannotations_interactively,
1610
- "pinned_at": pinned_at,
1639
+ "task_data_login": task_data_login,
1640
+ "task_data_password": task_data_password,
1641
+ "title": title,
1611
1642
  "workspace": workspace,
1612
- "review_settings": convert_and_respect_annotation_metadata(
1613
- object_=review_settings, annotation=ReviewSettingsRequest, direction="write"
1614
- ),
1615
- "assignment_settings": convert_and_respect_annotation_metadata(
1616
- object_=assignment_settings, annotation=AssignmentSettingsRequest, direction="write"
1617
- ),
1618
- "custom_script": custom_script,
1619
- "comment_classification_config": comment_classification_config,
1620
- "require_comment_on_skip": require_comment_on_skip,
1621
- "custom_task_lock_ttl": custom_task_lock_ttl,
1622
- "annotation_limit_count": annotation_limit_count,
1623
- "annotation_limit_percent": annotation_limit_percent,
1624
- "pause_on_failed_annotator_evaluation": pause_on_failed_annotator_evaluation,
1625
- "annotator_evaluation_minimum_score": annotator_evaluation_minimum_score,
1626
- "annotator_evaluation_minimum_tasks": annotator_evaluation_minimum_tasks,
1627
1643
  },
1628
1644
  headers={
1629
1645
  "content-type": "application/json",
@@ -1650,8 +1666,8 @@ class AsyncProjectsClient:
1650
1666
  id: int,
1651
1667
  *,
1652
1668
  mode: ModeEnum,
1653
- workspace: int,
1654
1669
  title: str,
1670
+ workspace: int,
1655
1671
  description: typing.Optional[str] = OMIT,
1656
1672
  request_options: typing.Optional[RequestOptions] = None,
1657
1673
  ) -> ProjectsDuplicateResponse:
@@ -1668,12 +1684,12 @@ class AsyncProjectsClient:
1668
1684
  * `settings` - Only settings
1669
1685
  * `settings,data` - Settings and tasks
1670
1686
 
1671
- workspace : int
1672
- Workspace, where to place duplicated project
1673
-
1674
1687
  title : str
1675
1688
  Title of duplicated project
1676
1689
 
1690
+ workspace : int
1691
+ Workspace, where to place duplicated project
1692
+
1677
1693
  description : typing.Optional[str]
1678
1694
  Description of duplicated project
1679
1695
 
@@ -1700,8 +1716,8 @@ class AsyncProjectsClient:
1700
1716
  await client.projects.duplicate(
1701
1717
  id=1,
1702
1718
  mode="settings",
1703
- workspace=1,
1704
1719
  title="title",
1720
+ workspace=1,
1705
1721
  )
1706
1722
 
1707
1723
 
@@ -1711,10 +1727,10 @@ class AsyncProjectsClient:
1711
1727
  f"api/projects/{jsonable_encoder(id)}/duplicate/",
1712
1728
  method="POST",
1713
1729
  json={
1730
+ "description": description,
1714
1731
  "mode": mode,
1715
- "workspace": workspace,
1716
1732
  "title": title,
1717
- "description": description,
1733
+ "workspace": workspace,
1718
1734
  },
1719
1735
  headers={
1720
1736
  "content-type": "application/json",