label-studio-sdk 1.0.0__py3-none-any.whl → 1.0.1__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.
- label_studio_sdk/__init__.py +30 -4
- label_studio_sdk/_extensions/pager_ext.py +49 -0
- label_studio_sdk/_legacy/objects.py +46 -7
- label_studio_sdk/_legacy/schema/label_config_schema.json +14 -14
- label_studio_sdk/actions/__init__.py +25 -0
- label_studio_sdk/actions/client.py +79 -6
- label_studio_sdk/actions/types/__init__.py +25 -0
- label_studio_sdk/actions/types/actions_create_request_filters.py +43 -0
- label_studio_sdk/actions/types/actions_create_request_filters_conjunction.py +5 -0
- label_studio_sdk/actions/types/actions_create_request_filters_items_item.py +49 -0
- label_studio_sdk/actions/types/actions_create_request_filters_items_item_filter.py +31 -0
- label_studio_sdk/actions/types/actions_create_request_filters_items_item_operator.py +23 -0
- label_studio_sdk/actions/types/actions_create_request_id.py +19 -0
- label_studio_sdk/actions/types/actions_create_request_ordering_item.py +31 -0
- label_studio_sdk/actions/types/actions_create_request_selected_items.py +10 -0
- label_studio_sdk/actions/types/actions_create_request_selected_items_excluded.py +39 -0
- label_studio_sdk/actions/types/actions_create_request_selected_items_included.py +39 -0
- label_studio_sdk/base_client.py +183 -0
- label_studio_sdk/client.py +17 -175
- label_studio_sdk/core/client_wrapper.py +1 -1
- label_studio_sdk/core/http_client.py +5 -1
- label_studio_sdk/export_storage/azure/client.py +176 -10
- label_studio_sdk/export_storage/azure/types/azure_create_response.py +15 -0
- label_studio_sdk/export_storage/azure/types/azure_update_response.py +15 -0
- label_studio_sdk/export_storage/gcs/client.py +180 -14
- label_studio_sdk/export_storage/gcs/types/gcs_create_response.py +16 -1
- label_studio_sdk/export_storage/gcs/types/gcs_update_response.py +16 -1
- label_studio_sdk/export_storage/local/client.py +168 -22
- label_studio_sdk/export_storage/local/types/local_create_response.py +12 -2
- label_studio_sdk/export_storage/local/types/local_update_response.py +12 -2
- label_studio_sdk/export_storage/redis/client.py +234 -30
- label_studio_sdk/export_storage/redis/types/redis_create_response.py +20 -5
- label_studio_sdk/export_storage/redis/types/redis_update_response.py +20 -5
- label_studio_sdk/export_storage/s3/client.py +214 -26
- label_studio_sdk/export_storage/s3/types/s3create_response.py +15 -0
- label_studio_sdk/export_storage/s3/types/s3update_response.py +15 -0
- label_studio_sdk/import_storage/azure/client.py +266 -90
- label_studio_sdk/import_storage/azure/types/azure_create_response.py +28 -18
- label_studio_sdk/import_storage/azure/types/azure_update_response.py +28 -18
- label_studio_sdk/import_storage/gcs/client.py +270 -94
- label_studio_sdk/import_storage/gcs/types/gcs_create_response.py +28 -18
- label_studio_sdk/import_storage/gcs/types/gcs_update_response.py +28 -18
- label_studio_sdk/import_storage/local/client.py +168 -22
- label_studio_sdk/import_storage/local/types/local_create_response.py +12 -2
- label_studio_sdk/import_storage/local/types/local_update_response.py +12 -2
- label_studio_sdk/import_storage/redis/client.py +206 -50
- label_studio_sdk/import_storage/redis/types/redis_create_response.py +20 -10
- label_studio_sdk/import_storage/redis/types/redis_update_response.py +20 -10
- label_studio_sdk/import_storage/s3/client.py +336 -110
- label_studio_sdk/import_storage/s3/types/s3create_response.py +35 -25
- label_studio_sdk/import_storage/s3/types/s3update_response.py +35 -25
- label_studio_sdk/{_legacy/label_interface → label_interface}/base.py +10 -0
- label_studio_sdk/{_legacy/label_interface → label_interface}/control_tags.py +109 -71
- label_studio_sdk/{_legacy/label_interface → label_interface}/interface.py +96 -50
- label_studio_sdk/{_legacy/label_interface → label_interface}/object_tags.py +8 -13
- label_studio_sdk/label_interface/region.py +75 -0
- label_studio_sdk/projects/client.py +4 -2
- label_studio_sdk/projects/client_ext.py +19 -0
- label_studio_sdk/tasks/client.py +26 -2
- label_studio_sdk/tasks/client_ext.py +18 -0
- label_studio_sdk/types/annotation.py +5 -5
- label_studio_sdk/types/task.py +1 -1
- label_studio_sdk/views/__init__.py +8 -4
- label_studio_sdk/views/types/__init__.py +8 -4
- label_studio_sdk/views/types/views_create_request_data.py +2 -2
- label_studio_sdk/views/types/views_create_request_data_filters.py +5 -5
- label_studio_sdk/views/types/views_create_request_data_filters_conjunction.py +1 -1
- label_studio_sdk/views/types/views_create_request_data_filters_items_item.py +10 -8
- label_studio_sdk/views/types/views_create_request_data_filters_items_item_filter.py +31 -0
- label_studio_sdk/views/types/views_create_request_data_filters_items_item_operator.py +23 -0
- label_studio_sdk/views/types/views_create_request_data_ordering_item.py +27 -34
- label_studio_sdk/views/types/views_update_request_data.py +2 -2
- label_studio_sdk/views/types/views_update_request_data_filters.py +5 -5
- label_studio_sdk/views/types/views_update_request_data_filters_conjunction.py +1 -1
- label_studio_sdk/views/types/views_update_request_data_filters_items_item.py +10 -8
- label_studio_sdk/views/types/views_update_request_data_filters_items_item_filter.py +31 -0
- label_studio_sdk/views/types/views_update_request_data_filters_items_item_operator.py +23 -0
- label_studio_sdk/views/types/views_update_request_data_ordering_item.py +27 -34
- {label_studio_sdk-1.0.0.dist-info → label_studio_sdk-1.0.1.dist-info}/METADATA +17 -161
- {label_studio_sdk-1.0.0.dist-info → label_studio_sdk-1.0.1.dist-info}/RECORD +84 -67
- label_studio_sdk/_legacy/label_interface/region.py +0 -43
- label_studio_sdk/views/types/views_create_request_data_ordering_item_direction.py +0 -5
- label_studio_sdk/views/types/views_update_request_data_ordering_item_direction.py +0 -5
- /label_studio_sdk/{_legacy/label_interface → label_interface}/__init__.py +0 -0
- /label_studio_sdk/{_legacy/label_interface → label_interface}/data_examples.json +0 -0
- /label_studio_sdk/{_legacy/label_interface → label_interface}/label_tags.py +0 -0
- {label_studio_sdk-1.0.0.dist-info → label_studio_sdk-1.0.1.dist-info}/WHEEL +0 -0
|
@@ -16,12 +16,12 @@ class ViewsCreateRequestData(pydantic_v1.BaseModel):
|
|
|
16
16
|
|
|
17
17
|
filters: typing.Optional[ViewsCreateRequestDataFilters] = pydantic_v1.Field(default=None)
|
|
18
18
|
"""
|
|
19
|
-
Filters
|
|
19
|
+
Filters to apply on tasks. You can use [the helper class `Filters` from this page](https://labelstud.io/sdk/data_manager.html) to create Data Manager Filters.<br>Example: `{"conjunction": "or", "items": [{"filter": "filter:tasks:completed_at", "operator": "greater", "type": "Datetime", "value": "2021-01-01T00:00:00.000Z"}]}`
|
|
20
20
|
"""
|
|
21
21
|
|
|
22
22
|
ordering: typing.Optional[typing.List[ViewsCreateRequestDataOrderingItem]] = pydantic_v1.Field(default=None)
|
|
23
23
|
"""
|
|
24
|
-
|
|
24
|
+
List of fields to order by. Fields are similar to filters but without the `filter:` prefix. To reverse the order, add a minus sign before the field name, e.g. `-tasks:created_at`.
|
|
25
25
|
"""
|
|
26
26
|
|
|
27
27
|
def json(self, **kwargs: typing.Any) -> str:
|
|
@@ -11,17 +11,17 @@ from .views_create_request_data_filters_items_item import ViewsCreateRequestData
|
|
|
11
11
|
|
|
12
12
|
class ViewsCreateRequestDataFilters(pydantic_v1.BaseModel):
|
|
13
13
|
"""
|
|
14
|
-
Filters
|
|
14
|
+
Filters to apply on tasks. You can use [the helper class `Filters` from this page](https://labelstud.io/sdk/data_manager.html) to create Data Manager Filters.<br>Example: `{"conjunction": "or", "items": [{"filter": "filter:tasks:completed_at", "operator": "greater", "type": "Datetime", "value": "2021-01-01T00:00:00.000Z"}]}`
|
|
15
15
|
"""
|
|
16
16
|
|
|
17
|
-
conjunction:
|
|
17
|
+
conjunction: ViewsCreateRequestDataFiltersConjunction = pydantic_v1.Field()
|
|
18
18
|
"""
|
|
19
|
-
|
|
19
|
+
Logical conjunction for the filters. This conjunction (either "or" or "and") will be applied to all items in the filters list. It is not possible to combine "or" and "and" within one list of filters. All filters will be either combined with "or" or with "and", but not a mix of both.
|
|
20
20
|
"""
|
|
21
21
|
|
|
22
|
-
items: typing.
|
|
22
|
+
items: typing.List[ViewsCreateRequestDataFiltersItemsItem] = pydantic_v1.Field()
|
|
23
23
|
"""
|
|
24
|
-
|
|
24
|
+
List of filter items
|
|
25
25
|
"""
|
|
26
26
|
|
|
27
27
|
def json(self, **kwargs: typing.Any) -> str:
|
|
@@ -5,27 +5,29 @@ import typing
|
|
|
5
5
|
|
|
6
6
|
from ...core.datetime_utils import serialize_datetime
|
|
7
7
|
from ...core.pydantic_utilities import deep_union_pydantic_dicts, pydantic_v1
|
|
8
|
+
from .views_create_request_data_filters_items_item_filter import ViewsCreateRequestDataFiltersItemsItemFilter
|
|
9
|
+
from .views_create_request_data_filters_items_item_operator import ViewsCreateRequestDataFiltersItemsItemOperator
|
|
8
10
|
|
|
9
11
|
|
|
10
12
|
class ViewsCreateRequestDataFiltersItemsItem(pydantic_v1.BaseModel):
|
|
11
|
-
filter:
|
|
13
|
+
filter: ViewsCreateRequestDataFiltersItemsItemFilter = pydantic_v1.Field()
|
|
12
14
|
"""
|
|
13
|
-
|
|
15
|
+
Filter identifier, it should start with `filter:tasks:` prefix, e.g. `filter:tasks:agreement`. For `task.data` fields it may look like `filter:tasks:data.field_name`. Possible values:<br><li>`filter:tasks:agreement`<br> (Number) Agreement for annotation results for a specific task (Enterprise only)</li><br><li>`filter:tasks:annotations_results`<br> (String) Annotation results for the tasks</li><br><li>`filter:tasks:annotators`<br> (List) Annotators that completed the task (Community). Can include assigned annotators (Enterprise only). Important note: the filter `type` should be List, but the filter `value` is integer</li><br><li>`filter:tasks:cancelled_annotations`<br> (Number) Number of cancelled or skipped annotations for the task</li><br><li>`filter:tasks:comments`<br> (Number) Number of comments in a task</li><br><li>`filter:tasks:completed_at`<br> (Datetime) Time when a task was fully annotated</li><br><li>`filter:tasks:created_at`<br> (Datetime) Time the task was created at</li><br><li>`filter:tasks:file_upload`<br> (String) Name of the file uploaded to create the tasks</li><br><li>`filter:tasks:ground_truth`<br> (Boolean) Ground truth status of the tasks</li><br><li>`filter:tasks:id`<br> (Number) Task ID</li><br><li>`filter:tasks:inner_id`<br> (Number) Task Inner ID, it starts from 1 for all projects</li><br><li>`filter:tasks:predictions_model_versions`<br> (String) Model version used for the predictions</li><br><li>`filter:tasks:predictions_results`<br> (String) Prediction results for the tasks</li><br><li>`filter:tasks:predictions_score`<br> (Number) Prediction score for the task</li><br><li>`filter:tasks:reviewed`<br> (Boolean) Whether the tasks have been reviewed (Enterprise only)</li><br><li>`filter:tasks:reviewers`<br> (String) Reviewers that reviewed the task, or assigned reviewers (Enterprise only). Important note: the filter `type` should be List, but the filter `value` is integer</li><br><li>`filter:tasks:reviews_accepted`<br> (Number) Number of annotations accepted for a task in review (Enterprise only)</li><br><li>`filter:tasks:reviews_rejected`<br> (Number) Number of annotations rejected for a task in review (Enterprise only)</li><br><li>`filter:tasks:total_annotations`<br> (Number) Total number of annotations on a task</li><br><li>`filter:tasks:total_predictions`<br> (Number) Total number of predictions for the task</li><br><li>`filter:tasks:unresolved_comment_count`<br> (Number) Number of unresolved comments in a task</li><br><li>`filter:tasks:updated_at`<br> (Datetime) Time the task was updated at (e.g. new annotation was created, review added, etc)</li>
|
|
14
16
|
"""
|
|
15
17
|
|
|
16
|
-
|
|
18
|
+
operator: ViewsCreateRequestDataFiltersItemsItemOperator = pydantic_v1.Field()
|
|
17
19
|
"""
|
|
18
|
-
|
|
20
|
+
Filter operator. Possible values:<br><li>`contains`<br> Contains</li><br><li>`ends_with`<br> Ends with</li><br><li>`equal`<br> Equal to</li><br><li>`exists`<br> Exists</li><br><li>`greater`<br> Greater than</li><br><li>`greater_or_equal`<br> Greater than or equal to</li><br><li>`in`<br> Is between min and max values, so the filter `value` should be e.g. `{"min": 1, "max": 7}`</li><br><li>`less`<br> Less than</li><br><li>`less_or_equal`<br> Less than or equal to</li><br><li>`not_contains`<br> Does not contain</li><br><li>`not_equal`<br> Not equal to</li><br><li>`not_exists`<br> Does not exist</li><br><li>`not_in`<br> Is not between min and max values, so the filter `value` should be e.g. `{"min": 1, "max": 7}`</li><br><li>`starts_with`<br> Starts with</li>
|
|
19
21
|
"""
|
|
20
22
|
|
|
21
|
-
|
|
23
|
+
type: str = pydantic_v1.Field()
|
|
22
24
|
"""
|
|
23
|
-
|
|
25
|
+
Type of the filter value. Possible values:<br><li>`Boolean`<br> Boolean</li><br><li>`Datetime`<br> Datetime string in `strftime('%Y-%m-%dT%H:%M:%S.%fZ')` format</li><br><li>`List`<br> List of items</li><br><li>`Number`<br> Float or Integer</li><br><li>`String`<br> String</li><br><li>`Unknown`<br> Unknown is explicitly converted to string format</li>
|
|
24
26
|
"""
|
|
25
27
|
|
|
26
|
-
value:
|
|
28
|
+
value: str = pydantic_v1.Field()
|
|
27
29
|
"""
|
|
28
|
-
|
|
30
|
+
Value to filter by
|
|
29
31
|
"""
|
|
30
32
|
|
|
31
33
|
def json(self, **kwargs: typing.Any) -> str:
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
ViewsCreateRequestDataFiltersItemsItemFilter = typing.Union[
|
|
6
|
+
typing.Literal[
|
|
7
|
+
"filter:tasks:agreement",
|
|
8
|
+
"filter:tasks:annotations_results",
|
|
9
|
+
"filter:tasks:annotators",
|
|
10
|
+
"filter:tasks:cancelled_annotations",
|
|
11
|
+
"filter:tasks:comments",
|
|
12
|
+
"filter:tasks:completed_at",
|
|
13
|
+
"filter:tasks:created_at",
|
|
14
|
+
"filter:tasks:file_upload",
|
|
15
|
+
"filter:tasks:ground_truth",
|
|
16
|
+
"filter:tasks:id",
|
|
17
|
+
"filter:tasks:inner_id",
|
|
18
|
+
"filter:tasks:predictions_model_versions",
|
|
19
|
+
"filter:tasks:predictions_results",
|
|
20
|
+
"filter:tasks:predictions_score",
|
|
21
|
+
"filter:tasks:reviewed",
|
|
22
|
+
"filter:tasks:reviewers",
|
|
23
|
+
"filter:tasks:reviews_accepted",
|
|
24
|
+
"filter:tasks:reviews_rejected",
|
|
25
|
+
"filter:tasks:total_annotations",
|
|
26
|
+
"filter:tasks:total_predictions",
|
|
27
|
+
"filter:tasks:unresolved_comment_count",
|
|
28
|
+
"filter:tasks:updated_at",
|
|
29
|
+
],
|
|
30
|
+
typing.Any,
|
|
31
|
+
]
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
ViewsCreateRequestDataFiltersItemsItemOperator = typing.Union[
|
|
6
|
+
typing.Literal[
|
|
7
|
+
"contains",
|
|
8
|
+
"ends_with",
|
|
9
|
+
"equal",
|
|
10
|
+
"exists",
|
|
11
|
+
"greater",
|
|
12
|
+
"greater_or_equal",
|
|
13
|
+
"in",
|
|
14
|
+
"less",
|
|
15
|
+
"less_or_equal",
|
|
16
|
+
"not_contains",
|
|
17
|
+
"not_equal",
|
|
18
|
+
"not_exists",
|
|
19
|
+
"not_in",
|
|
20
|
+
"starts_with",
|
|
21
|
+
],
|
|
22
|
+
typing.Any,
|
|
23
|
+
]
|
|
@@ -1,38 +1,31 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
|
-
import datetime as dt
|
|
4
3
|
import typing
|
|
5
4
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
class Config:
|
|
35
|
-
frozen = True
|
|
36
|
-
smart_union = True
|
|
37
|
-
extra = pydantic_v1.Extra.allow
|
|
38
|
-
json_encoders = {dt.datetime: serialize_datetime}
|
|
5
|
+
ViewsCreateRequestDataOrderingItem = typing.Union[
|
|
6
|
+
typing.Literal[
|
|
7
|
+
"tasks:agreement",
|
|
8
|
+
"tasks:annotations_results",
|
|
9
|
+
"tasks:annotators",
|
|
10
|
+
"tasks:cancelled_annotations",
|
|
11
|
+
"tasks:comments",
|
|
12
|
+
"tasks:completed_at",
|
|
13
|
+
"tasks:created_at",
|
|
14
|
+
"tasks:file_upload",
|
|
15
|
+
"tasks:ground_truth",
|
|
16
|
+
"tasks:id",
|
|
17
|
+
"tasks:inner_id",
|
|
18
|
+
"tasks:predictions_model_versions",
|
|
19
|
+
"tasks:predictions_results",
|
|
20
|
+
"tasks:predictions_score",
|
|
21
|
+
"tasks:reviewed",
|
|
22
|
+
"tasks:reviewers",
|
|
23
|
+
"tasks:reviews_accepted",
|
|
24
|
+
"tasks:reviews_rejected",
|
|
25
|
+
"tasks:total_annotations",
|
|
26
|
+
"tasks:total_predictions",
|
|
27
|
+
"tasks:unresolved_comment_count",
|
|
28
|
+
"tasks:updated_at",
|
|
29
|
+
],
|
|
30
|
+
typing.Any,
|
|
31
|
+
]
|
|
@@ -16,12 +16,12 @@ class ViewsUpdateRequestData(pydantic_v1.BaseModel):
|
|
|
16
16
|
|
|
17
17
|
filters: typing.Optional[ViewsUpdateRequestDataFilters] = pydantic_v1.Field(default=None)
|
|
18
18
|
"""
|
|
19
|
-
Filters
|
|
19
|
+
Filters to apply on tasks. You can use [the helper class `Filters` from this page](https://labelstud.io/sdk/data_manager.html) to create Data Manager Filters.<br>Example: `{"conjunction": "or", "items": [{"filter": "filter:tasks:completed_at", "operator": "greater", "type": "Datetime", "value": "2021-01-01T00:00:00.000Z"}]}`
|
|
20
20
|
"""
|
|
21
21
|
|
|
22
22
|
ordering: typing.Optional[typing.List[ViewsUpdateRequestDataOrderingItem]] = pydantic_v1.Field(default=None)
|
|
23
23
|
"""
|
|
24
|
-
|
|
24
|
+
List of fields to order by. Fields are similar to filters but without the `filter:` prefix. To reverse the order, add a minus sign before the field name, e.g. `-tasks:created_at`.
|
|
25
25
|
"""
|
|
26
26
|
|
|
27
27
|
def json(self, **kwargs: typing.Any) -> str:
|
|
@@ -11,17 +11,17 @@ from .views_update_request_data_filters_items_item import ViewsUpdateRequestData
|
|
|
11
11
|
|
|
12
12
|
class ViewsUpdateRequestDataFilters(pydantic_v1.BaseModel):
|
|
13
13
|
"""
|
|
14
|
-
Filters
|
|
14
|
+
Filters to apply on tasks. You can use [the helper class `Filters` from this page](https://labelstud.io/sdk/data_manager.html) to create Data Manager Filters.<br>Example: `{"conjunction": "or", "items": [{"filter": "filter:tasks:completed_at", "operator": "greater", "type": "Datetime", "value": "2021-01-01T00:00:00.000Z"}]}`
|
|
15
15
|
"""
|
|
16
16
|
|
|
17
|
-
conjunction:
|
|
17
|
+
conjunction: ViewsUpdateRequestDataFiltersConjunction = pydantic_v1.Field()
|
|
18
18
|
"""
|
|
19
|
-
|
|
19
|
+
Logical conjunction for the filters. This conjunction (either "or" or "and") will be applied to all items in the filters list. It is not possible to combine "or" and "and" within one list of filters. All filters will be either combined with "or" or with "and", but not a mix of both.
|
|
20
20
|
"""
|
|
21
21
|
|
|
22
|
-
items: typing.
|
|
22
|
+
items: typing.List[ViewsUpdateRequestDataFiltersItemsItem] = pydantic_v1.Field()
|
|
23
23
|
"""
|
|
24
|
-
|
|
24
|
+
List of filter items
|
|
25
25
|
"""
|
|
26
26
|
|
|
27
27
|
def json(self, **kwargs: typing.Any) -> str:
|
|
@@ -5,27 +5,29 @@ import typing
|
|
|
5
5
|
|
|
6
6
|
from ...core.datetime_utils import serialize_datetime
|
|
7
7
|
from ...core.pydantic_utilities import deep_union_pydantic_dicts, pydantic_v1
|
|
8
|
+
from .views_update_request_data_filters_items_item_filter import ViewsUpdateRequestDataFiltersItemsItemFilter
|
|
9
|
+
from .views_update_request_data_filters_items_item_operator import ViewsUpdateRequestDataFiltersItemsItemOperator
|
|
8
10
|
|
|
9
11
|
|
|
10
12
|
class ViewsUpdateRequestDataFiltersItemsItem(pydantic_v1.BaseModel):
|
|
11
|
-
filter:
|
|
13
|
+
filter: ViewsUpdateRequestDataFiltersItemsItemFilter = pydantic_v1.Field()
|
|
12
14
|
"""
|
|
13
|
-
|
|
15
|
+
Filter identifier, it should start with `filter:tasks:` prefix, e.g. `filter:tasks:agreement`. For `task.data` fields it may look like `filter:tasks:data.field_name`. Possible values:<br><li>`filter:tasks:agreement`<br> (Number) Agreement for annotation results for a specific task (Enterprise only)</li><br><li>`filter:tasks:annotations_results`<br> (String) Annotation results for the tasks</li><br><li>`filter:tasks:annotators`<br> (List) Annotators that completed the task (Community). Can include assigned annotators (Enterprise only). Important note: the filter `type` should be List, but the filter `value` is integer</li><br><li>`filter:tasks:cancelled_annotations`<br> (Number) Number of cancelled or skipped annotations for the task</li><br><li>`filter:tasks:comments`<br> (Number) Number of comments in a task</li><br><li>`filter:tasks:completed_at`<br> (Datetime) Time when a task was fully annotated</li><br><li>`filter:tasks:created_at`<br> (Datetime) Time the task was created at</li><br><li>`filter:tasks:file_upload`<br> (String) Name of the file uploaded to create the tasks</li><br><li>`filter:tasks:ground_truth`<br> (Boolean) Ground truth status of the tasks</li><br><li>`filter:tasks:id`<br> (Number) Task ID</li><br><li>`filter:tasks:inner_id`<br> (Number) Task Inner ID, it starts from 1 for all projects</li><br><li>`filter:tasks:predictions_model_versions`<br> (String) Model version used for the predictions</li><br><li>`filter:tasks:predictions_results`<br> (String) Prediction results for the tasks</li><br><li>`filter:tasks:predictions_score`<br> (Number) Prediction score for the task</li><br><li>`filter:tasks:reviewed`<br> (Boolean) Whether the tasks have been reviewed (Enterprise only)</li><br><li>`filter:tasks:reviewers`<br> (String) Reviewers that reviewed the task, or assigned reviewers (Enterprise only). Important note: the filter `type` should be List, but the filter `value` is integer</li><br><li>`filter:tasks:reviews_accepted`<br> (Number) Number of annotations accepted for a task in review (Enterprise only)</li><br><li>`filter:tasks:reviews_rejected`<br> (Number) Number of annotations rejected for a task in review (Enterprise only)</li><br><li>`filter:tasks:total_annotations`<br> (Number) Total number of annotations on a task</li><br><li>`filter:tasks:total_predictions`<br> (Number) Total number of predictions for the task</li><br><li>`filter:tasks:unresolved_comment_count`<br> (Number) Number of unresolved comments in a task</li><br><li>`filter:tasks:updated_at`<br> (Datetime) Time the task was updated at (e.g. new annotation was created, review added, etc)</li>
|
|
14
16
|
"""
|
|
15
17
|
|
|
16
|
-
|
|
18
|
+
operator: ViewsUpdateRequestDataFiltersItemsItemOperator = pydantic_v1.Field()
|
|
17
19
|
"""
|
|
18
|
-
|
|
20
|
+
Filter operator. Possible values:<br><li>`contains`<br> Contains</li><br><li>`ends_with`<br> Ends with</li><br><li>`equal`<br> Equal to</li><br><li>`exists`<br> Exists</li><br><li>`greater`<br> Greater than</li><br><li>`greater_or_equal`<br> Greater than or equal to</li><br><li>`in`<br> Is between min and max values, so the filter `value` should be e.g. `{"min": 1, "max": 7}`</li><br><li>`less`<br> Less than</li><br><li>`less_or_equal`<br> Less than or equal to</li><br><li>`not_contains`<br> Does not contain</li><br><li>`not_equal`<br> Not equal to</li><br><li>`not_exists`<br> Does not exist</li><br><li>`not_in`<br> Is not between min and max values, so the filter `value` should be e.g. `{"min": 1, "max": 7}`</li><br><li>`starts_with`<br> Starts with</li>
|
|
19
21
|
"""
|
|
20
22
|
|
|
21
|
-
|
|
23
|
+
type: str = pydantic_v1.Field()
|
|
22
24
|
"""
|
|
23
|
-
|
|
25
|
+
Type of the filter value. Possible values:<br><li>`Boolean`<br> Boolean</li><br><li>`Datetime`<br> Datetime string in `strftime('%Y-%m-%dT%H:%M:%S.%fZ')` format</li><br><li>`List`<br> List of items</li><br><li>`Number`<br> Float or Integer</li><br><li>`String`<br> String</li><br><li>`Unknown`<br> Unknown is explicitly converted to string format</li>
|
|
24
26
|
"""
|
|
25
27
|
|
|
26
|
-
value:
|
|
28
|
+
value: str = pydantic_v1.Field()
|
|
27
29
|
"""
|
|
28
|
-
|
|
30
|
+
Value to filter by
|
|
29
31
|
"""
|
|
30
32
|
|
|
31
33
|
def json(self, **kwargs: typing.Any) -> str:
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
ViewsUpdateRequestDataFiltersItemsItemFilter = typing.Union[
|
|
6
|
+
typing.Literal[
|
|
7
|
+
"filter:tasks:agreement",
|
|
8
|
+
"filter:tasks:annotations_results",
|
|
9
|
+
"filter:tasks:annotators",
|
|
10
|
+
"filter:tasks:cancelled_annotations",
|
|
11
|
+
"filter:tasks:comments",
|
|
12
|
+
"filter:tasks:completed_at",
|
|
13
|
+
"filter:tasks:created_at",
|
|
14
|
+
"filter:tasks:file_upload",
|
|
15
|
+
"filter:tasks:ground_truth",
|
|
16
|
+
"filter:tasks:id",
|
|
17
|
+
"filter:tasks:inner_id",
|
|
18
|
+
"filter:tasks:predictions_model_versions",
|
|
19
|
+
"filter:tasks:predictions_results",
|
|
20
|
+
"filter:tasks:predictions_score",
|
|
21
|
+
"filter:tasks:reviewed",
|
|
22
|
+
"filter:tasks:reviewers",
|
|
23
|
+
"filter:tasks:reviews_accepted",
|
|
24
|
+
"filter:tasks:reviews_rejected",
|
|
25
|
+
"filter:tasks:total_annotations",
|
|
26
|
+
"filter:tasks:total_predictions",
|
|
27
|
+
"filter:tasks:unresolved_comment_count",
|
|
28
|
+
"filter:tasks:updated_at",
|
|
29
|
+
],
|
|
30
|
+
typing.Any,
|
|
31
|
+
]
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
ViewsUpdateRequestDataFiltersItemsItemOperator = typing.Union[
|
|
6
|
+
typing.Literal[
|
|
7
|
+
"contains",
|
|
8
|
+
"ends_with",
|
|
9
|
+
"equal",
|
|
10
|
+
"exists",
|
|
11
|
+
"greater",
|
|
12
|
+
"greater_or_equal",
|
|
13
|
+
"in",
|
|
14
|
+
"less",
|
|
15
|
+
"less_or_equal",
|
|
16
|
+
"not_contains",
|
|
17
|
+
"not_equal",
|
|
18
|
+
"not_exists",
|
|
19
|
+
"not_in",
|
|
20
|
+
"starts_with",
|
|
21
|
+
],
|
|
22
|
+
typing.Any,
|
|
23
|
+
]
|
|
@@ -1,38 +1,31 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
|
-
import datetime as dt
|
|
4
3
|
import typing
|
|
5
4
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
class Config:
|
|
35
|
-
frozen = True
|
|
36
|
-
smart_union = True
|
|
37
|
-
extra = pydantic_v1.Extra.allow
|
|
38
|
-
json_encoders = {dt.datetime: serialize_datetime}
|
|
5
|
+
ViewsUpdateRequestDataOrderingItem = typing.Union[
|
|
6
|
+
typing.Literal[
|
|
7
|
+
"tasks:agreement",
|
|
8
|
+
"tasks:annotations_results",
|
|
9
|
+
"tasks:annotators",
|
|
10
|
+
"tasks:cancelled_annotations",
|
|
11
|
+
"tasks:comments",
|
|
12
|
+
"tasks:completed_at",
|
|
13
|
+
"tasks:created_at",
|
|
14
|
+
"tasks:file_upload",
|
|
15
|
+
"tasks:ground_truth",
|
|
16
|
+
"tasks:id",
|
|
17
|
+
"tasks:inner_id",
|
|
18
|
+
"tasks:predictions_model_versions",
|
|
19
|
+
"tasks:predictions_results",
|
|
20
|
+
"tasks:predictions_score",
|
|
21
|
+
"tasks:reviewed",
|
|
22
|
+
"tasks:reviewers",
|
|
23
|
+
"tasks:reviews_accepted",
|
|
24
|
+
"tasks:reviews_rejected",
|
|
25
|
+
"tasks:total_annotations",
|
|
26
|
+
"tasks:total_predictions",
|
|
27
|
+
"tasks:unresolved_comment_count",
|
|
28
|
+
"tasks:updated_at",
|
|
29
|
+
],
|
|
30
|
+
typing.Any,
|
|
31
|
+
]
|