Update or assign annotation tasks in bulk
Update many annotation tasks in one request, operating in one of two mutually exclusive modes.
In ids mode, provide a list of task IDs together with an assigned_to and/or a status
(limited to pending_redo or completed) to apply those field changes to each listed task;
only tasks that currently exist are affected and IDs that do not resolve are silently skipped.
In audit_assignment mode, provide an evaluation ID, queue ID, and evaluation item IDs to assign
Level 1 and/or Level 2 auditors for those items, creating the underlying audit tasks when they do
not yet exist; a Level 2 auditor cannot be assigned unless a Level 1 auditor is already present.
Exactly one of ids or audit_assignment must be supplied, and assigned_to/status are only
valid in ids mode. Access and state checks run before any write, so the request is rejected as a
whole with nothing persisted if any task is inaccessible, if a status change is attempted without
a modification role, or if an already-completed task would be reassigned; audit assignment also
requires a modification role. Reassigning a task to a new user emits a task-start lineage event,
and the response returns the affected annotation tasks.
Update or assign annotation tasks in bulk
import os
from scale_gp_beta import SGPClient
client = SGPClient(
api_key=os.environ.get("SGP_API_KEY"), # This is the default and can be omitted
)
response = client.annotation_tasks.batch_update()
print(response.items){
"items": [
{
"id": "id",
"evaluation_id": "evaluation_id",
"evaluation_item_id": "evaluation_item_id",
"priority": 0,
"queue_id": "queue_id",
"status": "NOT_READY",
"task_type": "EVALUATION_ANNOTATION",
"updated_at": "2019-12-27T18:11:19.117Z",
"assigned_to": "assigned_to",
"assignment_expires_at": "2019-12-27T18:11:19.117Z",
"duration_seconds": 0,
"flagged_for_review": true,
"object": "annotation_task",
"review_comment": "review_comment"
}
],
"object": "list"
}Returns Examples
{
"items": [
{
"id": "id",
"evaluation_id": "evaluation_id",
"evaluation_item_id": "evaluation_item_id",
"priority": 0,
"queue_id": "queue_id",
"status": "NOT_READY",
"task_type": "EVALUATION_ANNOTATION",
"updated_at": "2019-12-27T18:11:19.117Z",
"assigned_to": "assigned_to",
"assignment_expires_at": "2019-12-27T18:11:19.117Z",
"duration_seconds": 0,
"flagged_for_review": true,
"object": "annotation_task",
"review_comment": "review_comment"
}
],
"object": "list"
}