Skip to main content
A
Docs

API Reference

Complete API reference for the Anar Minutes meeting intelligence platform.

Base URL

http://localhost:8013/api/v1

All endpoints require Bearer token authentication in the Authorization header.

Meetings

Create Meeting

POST
/api/v1/meetings

Create a new meeting record.

Request Body:

{
  "title": "Q4 Budget Review",
  "meeting_type": "review",
  "language": "ar",
  "participants": ["Ahmed Al Mansoori", "Fatima Al Hashimi"],
  "scheduled_at": "2024-01-15T14:00:00Z"
}
FieldTypeRequiredDescription
titlestringYesMeeting title (1-500 characters)
meeting_typestringNocabinet, committee, review, standup, general, board, workshop (default: general)
languagestringNoar, en, auto (default: auto)
participantsstring[]NoList of participant names
scheduled_atdatetimeNoScheduled meeting time (ISO 8601)

Response:

{
  "id": "mtg-a1b2c3",
  "title": "Q4 Budget Review",
  "meeting_type": "review",
  "status": "created",
  "language": "ar",
  "audio_filename": null,
  "duration": null,
  "participants": ["Ahmed Al Mansoori", "Fatima Al Hashimi"],
  "created_by": "user-123",
  "scheduled_at": "2024-01-15T14:00:00Z",
  "created_at": "2024-01-15T10:00:00Z",
  "updated_at": "2024-01-15T10:00:00Z",
  "has_transcript": false,
  "has_summary": false,
  "action_item_count": 0
}

List Meetings

GET
/api/v1/meetings

Query Parameters:

ParameterTypeDefaultDescription
pageinteger1Page number
page_sizeinteger20Results per page (max 100)
meeting_typestring-Filter by meeting type
statusstring-Filter by status
searchstring-Search in meeting titles

Get Meeting Details

GET
/api/v1/meetings/{meeting_id}

Returns full meeting details including summary and action items.

Response:

{
  "id": "mtg-a1b2c3",
  "title": "Q4 Budget Review",
  "meeting_type": "review",
  "status": "summarized",
  "language": "ar",
  "audio_filename": "budget_review.mp3",
  "duration": 3540.0,
  "participants": ["Ahmed Al Mansoori", "Fatima Al Hashimi"],
  "summary": {
    "agenda": ["Q4 budget utilization review", "2025 budget planning"],
    "key_points": ["Budget utilization at 94.2%", "AI investment approved"],
    "decisions": ["Approved additional AED 5M for AI infrastructure"],
    "action_items": [...],
    "next_steps": ["Follow-up review in 30 days"]
  },
  "action_items": [...],
  "created_by": "user-123",
  "created_at": "2024-01-15T10:00:00Z",
  "updated_at": "2024-01-15T11:30:00Z"
}

Audio & Transcription

Upload Audio

POST
/api/v1/meetings/{meeting_id}/upload

Upload a meeting audio file. Accepts multipart/form-data with a file field. Triggers automatic transcription.

Get Transcript

GET
/api/v1/meetings/{meeting_id}/transcript

Returns the meeting transcript with speaker-attributed segments.

Response:

{
  "meeting_id": "mtg-a1b2c3",
  "segments": [
    {
      "speaker": "Speaker 1",
      "start": 0.0,
      "end": 12.5,
      "text": "بسم الله الرحمن الرحيم، نبدأ اجتماع اليوم"
    }
  ],
  "full_text": "...",
  "language": "ar",
  "duration": 3540.0
}

Summarization

Summarize Meeting

POST
/api/v1/meetings/{meeting_id}/summarize

Generate an AI summary of the meeting transcript. Produces structured sections (agenda, key points, decisions, action items, next steps) and extracts action items.

Action Items

Get Action Items

GET
/api/v1/meetings/{meeting_id}/actions

List action items for a meeting, optionally filtered by status.

Query Parameters:

ParameterTypeDescription
statusstringFilter by status: pending, in_progress, completed, cancelled

Update Action Item

PATCH
/api/v1/meetings/{meeting_id}/actions/{action_id}

Update an action item's status, assignee, deadline, priority, or description.

Request Body:

{
  "status": "in_progress",
  "assignee": "Dr. Ahmed Al Mansoori",
  "deadline": "2024-02-15T17:00:00Z",
  "priority": "high"
}

Export

Export Meeting

GET
/api/v1/meetings/{meeting_id}/export

Export the meeting in a structured format.

Query Parameters:

ParameterTypeDefaultDescription
formatstringmarkdownExport format: markdown or json

Templates

Create Template

POST
/api/v1/templates

List Templates

GET
/api/v1/templates

Get Template

GET
/api/v1/templates/{template_id}

Update Template

PUT
/api/v1/templates/{template_id}

Delete Template

DELETE
/api/v1/templates/{template_id}

Requires admin role. Built-in templates cannot be deleted.

Health & Metrics

Health Check

GET
/api/v1/health

Metrics

GET
/api/v1/metrics

Returns uptime, total requests, and error counts.