Tasks
Task and annotation management
Retrieves all tasks for a specific project with optional filtering
Project ID
Page number (1-indexed)
1
Items per page (max 100)
10
JSON stringified filter object
Filter by task status
Filter by stage ID
Filter by assignee email
Filter by batch names (comma-separated)
Tasks retrieved successfully
curl -X GET "https://imeritapi.ango.ai/v2/project/507f1f77bcf86cd799439011/tasks?page=1&limit=10&status=Completed&stage=Label" \
-H "apikey: YOUR_API_KEY" \
-H "Content-Type: application/json"
Tasks retrieved successfully
{
"status": "success",
"data": {
"tasks": [
{
"_id": "text",
"project": "text",
"asset": "text",
"stage": "text",
"status": "text",
"assignee": "text",
"externalId": "text",
"batches": [
"text"
],
"priority": 1,
"answer": {},
"createdAt": "2025-10-07T12:40:36.724Z",
"completedAt": "2025-10-07T12:40:36.724Z",
"duration": 1
}
],
"total": 1
}
}
Move tasks from one stage to another based on filter criteria
Project ID
Destination stage ID
Tasks requeued successfully
Bad request - validation error
curl -X POST "https://imeritapi.ango.ai/v2/project/507f1f77bcf86cd799439011/requeueTasks" \
-H "apikey: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"toStageId": "Review",
"filters": {
"fromStageIds": ["Label"],
"batches": ["Batch1"]
},
"options": {
"resetAnswer": false,
"unassign": true
}
}'
{
"status": "success",
"data": {
"modifiedCount": {
"modified": 1,
"toStageId": "text"
}
}
}
Update priority for multiple tasks based on filter criteria
Project ID
Priority value (-1000 to 1000)
Priority updated successfully
Bad request - validation error
POST /v2/project/{projectId}/updatePriority HTTP/1.1
Host: imeritapi.ango.ai
apikey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 144
{
"priority": 1,
"filters": {
"taskIds": [
"text"
],
"externalIds": [
"text"
],
"assetIds": [
"text"
],
"fromStageIds": [
"text"
],
"batches": [
"text"
]
},
"options": {}
}
{
"status": "success",
"data": {
"result": {
"modifiedCount": 1,
"priority": 1
}
}
}
Retrieves detailed information about a specific task
Task ID
Task retrieved successfully
Resource not found
curl -X GET "https://imeritapi.ango.ai/v2/task/task123" \
-H "apikey: YOUR_API_KEY" \
-H "Content-Type: application/json"
{
"status": "success",
"data": {
"task": {
"_id": "text",
"project": "text",
"asset": "text",
"stage": "text",
"status": "text",
"assignee": "text",
"externalId": "text",
"batches": [
"text"
],
"priority": 1,
"answer": {},
"createdAt": "2025-10-07T12:40:36.724Z",
"completedAt": "2025-10-07T12:40:36.724Z",
"duration": 1
}
}
}
Retrieves the complete history of changes for a task
Task ID
Page number (1-indexed)
1
Items per page (max 100)
10
Task history retrieved successfully
GET /v2/task/{taskId}/history HTTP/1.1
Host: imeritapi.ango.ai
apikey: YOUR_API_KEY
Accept: */*
Task history retrieved successfully
{
"status": "success",
"data": {
"taskHistory": [
{
"_id": "text",
"task": "text",
"user": "text",
"action": "text",
"answer": {},
"createdAt": "2025-10-07T12:40:36.724Z"
}
]
}
}
Retrieves a specific task history entry by ID
Task history entry ID
Task history entry retrieved successfully
GET /v2/taskHistory/{taskHistoryId} HTTP/1.1
Host: imeritapi.ango.ai
apikey: YOUR_API_KEY
Accept: */*
Task history entry retrieved successfully
{
"status": "success",
"data": {
"taskHistory": {
"_id": "text",
"task": "text",
"user": "text",
"action": "text",
"answer": {},
"createdAt": "2025-10-07T12:40:36.724Z"
}
}
}
Assigns one or more tasks to a specific user at a specific stage
User email to assign to
Project ID
Array of task IDs
Stage ID
Tasks assigned successfully
Bad request - validation error
curl -X POST "https://imeritapi.ango.ai/v2/task/assign" \
-H "apikey: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"user": "[email protected]",
"project": "507f1f77bcf86cd799439011",
"tasks": ["task123", "task456"],
"stage": "Label"
}'
{
"status": "success",
"data": {
"task": {
"updatedCount": 1,
"assignedTasks": {
"count": 1
},
"message": "text"
}
}
}
Submits annotation answer for a task
Task ID
Set to 'true' if annotation from plugin
Annotation answer object (structure depends on project categorySchema)
Annotation submitted successfully
curl -X POST "https://imeritapi.ango.ai/v2/annotate/task123?isPlugin=false" \
-H "apikey: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"answer": {
"objects": [
{
"schemaId": "box-tool-id",
"bounding-box": {
"x": 100,
"y": 100,
"width": 200,
"height": 150
},
"title": "Car"
}
]
}
}'
Annotation submitted successfully
{
"status": "success",
"data": {
"label": {
"_id": "text",
"project": "text",
"asset": "text",
"stage": "text",
"status": "text",
"assignee": "text",
"externalId": "text",
"batches": [
"text"
],
"priority": 1,
"answer": {},
"createdAt": "2025-10-07T12:40:36.724Z",
"completedAt": "2025-10-07T12:40:36.724Z",
"duration": 1
}
}
}