Skip to main content

Disapprove Task

Disapprove a task to remove it from AI model learning. When you disapprove a task, its data is removed from the training dataset to prevent the model from learning incorrect patterns.

Request

POST /v2/{team_id}/project/{project_id}/task/{task_id}/disapprove

Path Parameters

ParameterTypeDescription
team_idstringYour team identifier
project_idstringProject identifier
task_idstringTask identifier

Request Body

This endpoint does not require a request body.

Response

Returns the full public task object with approved: false.

{
"payload": {
"id": "task_abcdef123456",
"name": "Document Analysis Task",
"created_at": "2024-01-15T10:30:00Z",
"meta": [{ "name": "category", "value": "invoice" }],
"status": "COMPLETED",
"step_type": "EXTRACT",
"upload_id": "upl_123456789",
"project_id": "proj_123456",
"approved": false,
"exported_at": null,
"export_failed_at": null,
"last_opened_at": null,
"pages": [
{
"id": "page_1",
"width": 2480,
"height": 3508,
"annotations": [
{
"id": "ann_1",
"entity_id": "total_amount",
"confidence": 0.98,
"content": "$1,234.56",
"top": 120.5,
"left_of_line": 340.0
}
],
"checkboxes": [
{
"id": "cb_1",
"confidence": 0.92,
"checked": true,
"coordinates": [
[100, 100],
[120, 100],
[120, 120],
[100, 120]
]
}
],
"segments": [
{
"id": "seg_1",
"confidence": 0.87,
"coordinates": [
[50, 50],
[400, 50],
[400, 200],
[50, 200]
]
}
],
"signatures": [
{
"id": "sig_1",
"confidence": 0.83,
"coordinates": [
[800, 600],
[1100, 600],
[1100, 750],
[800, 750]
]
}
]
}
]
}
}

Example Request

curl -X POST \
'https://api.send.ai/v2/team_123456/project/proj_123456/task/task_abcdef123456/disapprove' \
-H 'Authorization: Bearer YOUR_API_KEY'

Business Logic

Validation Rules

  • Processing State: Tasks cannot be disapproved while in PROCESSING state
  • Already Disapproved: Cannot disapprove a task that is already disapproved
  • All Other States: Tasks can be disapproved in any state except PROCESSING

What Happens When You Disapprove

  1. Task Update: The task's approved field is set to false
  2. AI Unlearning: The task data is removed from the training dataset
  3. Audit Trail: Approval timestamp and approver are cleared
  4. Lifecycle Event: A task_de_approved event is published for tracking

Use Cases

  • Poor Quality: Remove low-quality extractions from model training
  • Incorrect Data: Flag incorrectly processed tasks to prevent model degradation
  • Edge Cases: Remove unusual examples that might confuse the model
  • Data Correction: After identifying errors, disapprove to prevent the model from learning mistakes

Error Handling

Status CodeErrorDescription
400Bad RequestTask is already disapproved
400Bad RequestTask cannot be disapproved while being processed
404Not FoundTask not found
401UnauthorizedInvalid or missing API key