Overview
Minutes automatically extracts action items from meeting transcripts during AI summarization. Each action item includes a description, assignee, deadline, and priority level. Teams can track progress, reassign tasks, and mark items complete through the dashboard or API.
Automatic Extraction
When a meeting is summarized (via POST /api/v1/meetings/{meeting_id}/summarize), the LLM analyzes the transcript and identifies commitments, assignments, and follow-up tasks. Extracted action items include:
- What needs to be done (description)
- Who is responsible (assignee, matched from the participant list)
- When it is due (deadline, extracted from context)
- How urgent it is (priority: low, medium, high, critical)
curl -X POST http://localhost:8013/api/v1/meetings/{meeting_id}/summarize \
-H "Authorization: Bearer $TOKEN"
The summarize endpoint processes the transcript and populates both the meeting summary and the action items list.
Viewing Action Items
Per-Meeting Actions
Retrieve all action items for a specific meeting:
curl http://localhost:8013/api/v1/meetings/{meeting_id}/actions \
-H "Authorization: Bearer $TOKEN"
Response:
[
{
"id": "act-001",
"meeting_id": "mtg-a1b2c3",
"description": "Prepare AI model risk assessment report for the Digital department",
"assignee": "Eng. Fatima Al Hashimi",
"deadline": "2024-02-01T17:00:00Z",
"priority": "high",
"status": "pending",
"order_index": 0,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
},
{
"id": "act-002",
"meeting_id": "mtg-a1b2c3",
"description": "Schedule vendor presentations for AI governance tools",
"assignee": "Mohammed Al Zaabi",
"deadline": "2024-01-25T17:00:00Z",
"priority": "medium",
"status": "pending",
"order_index": 1,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
]
Filter by Status
Filter action items to see only pending, in-progress, or completed items:
curl "http://localhost:8013/api/v1/meetings/{meeting_id}/actions?status=pending" \
-H "Authorization: Bearer $TOKEN"
Updating Action Items
Update the status, assignee, deadline, priority, or description of an action item:
curl -X PATCH http://localhost:8013/api/v1/meetings/{meeting_id}/actions/{action_id} \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-d '{
"status": "in_progress",
"assignee": "Dr. Ahmed Al Mansoori",
"deadline": "2024-02-15T17:00:00Z"
}'
Updatable Fields
| Field | Type | Description |
|---|---|---|
status | string | pending, in_progress, completed, cancelled |
assignee | string | Name of the responsible person |
deadline | datetime | Due date and time (ISO 8601) |
priority | string | low, medium, high, critical |
description | string | Task description |
Priority Levels
| Priority | When to Use |
|---|---|
critical | Blocking decisions, regulatory deadlines, leadership directives |
high | Time-sensitive tasks with near-term deadlines |
medium | Standard follow-up tasks with reasonable timelines |
low | Nice-to-have items, research tasks, long-term initiatives |
Action Item Lifecycle
pending --> in_progress --> completed
\
--> cancelled
Dashboard Tracking
The Minutes dashboard provides a consolidated action items view across all meetings, filterable by status, assignee, and priority. This gives team leads a single view of all outstanding commitments.
Best Practices
Provide participant names. When creating a meeting, include full participant names. The LLM matches transcript mentions to participant names when assigning action items, producing more accurate assignments.
Use specific meeting types. Cabinet and board meeting templates prompt the LLM to look for formal decisions and ministerial directives, while standup templates focus on blockers and daily commitments.
Review and refine. AI-extracted action items are a strong starting point but may need human refinement. Use the update endpoint to correct assignees, adjust deadlines, and add missing context.