Skip to main content

MOM Generation API

Endpoint for AI-powered meeting minutes generation.

Base URL

http://localhost:3001/mom
Authentication Required

The MOM endpoint requires authentication.

Endpoints

Generate MOM

Generates structured meeting minutes from notes.

POST /mom/generate

Headers:

Content-Type: application/json
Cookie: connect.sid={session_cookie}

Request Body:

{
"meetingNotes": "Project Status Meeting - December 26, 2024\n\nAttendees: John Smith, Sarah Johnson\n\nDiscussion:\n- John presented Q4 results\n- Sarah discussed new features\n\nAction Items:\n- John to prepare forecast by Jan 5\n- Sarah to complete testing by Dec 30"
}
FieldTypeRequiredDescription
meetingNotesstringYesRaw meeting notes or transcript

Success Response (200):

{
"mom": "# Meeting Minutes\n\n## Overview\nThe project status meeting covered Q4 results and upcoming feature releases...\n\n## Discussion Items\n**John Smith:**\n- Presented Q4 results showing positive growth\n\n**Sarah Johnson:**\n- Discussed new feature implementation\n\n## Action Items\n| Action Item | Assignee Name | Due Date |\n|-------------|---------------|----------|\n| Prepare Q1 forecast | John Smith | 01/05 & Sun |\n| Complete testing | Sarah Johnson | 12/30 & Mon |\n\n...",
"structured": {
"meetingTitle": "Project Status Meeting",
"dateTime": "December 26, 2024",
"location": "TBD",
"attendees": ["John Smith", "Sarah Johnson"],
"agenda": ["Q4 Results Review", "New Feature Discussion"],
"discussionItems": {
"John Smith": ["Presented Q4 results showing positive growth"],
"Sarah Johnson": ["Discussed new feature implementation"]
},
"actionItems": [
{
"task": "Prepare Q1 forecast",
"assignee": "John Smith",
"dueDate": "January 5"
},
{
"task": "Complete testing",
"assignee": "Sarah Johnson",
"dueDate": "December 30"
}
],
"decisions": [],
"nextMeeting": {
"dateTime": "TBD",
"location": "TBD",
"attendees": []
}
}
}

Response Fields:

FieldTypeDescription
momstringFull formatted MOM in Markdown
structuredobjectParsed structured data
structured.meetingTitlestringExtracted meeting title
structured.dateTimestringMeeting date/time
structured.attendeesstring[]List of attendees
structured.actionItemsarrayParsed action items
structured.nextMeetingobjectNext meeting details

Error Response (400):

{
"error": "Meeting notes are required"
}

Error Response (500):

{
"error": "Failed to generate MOM: Rate limit exceeded"
}

Output Format

The generated MOM follows this Markdown structure:

# Meeting Minutes

## Overview
[80-word summary]

## Discussion Items
[Speaker Name]:
- Point 1
- Point 2

## Action Items
| Action Item | Assignee Name | Due Date |
|-------------|---------------|----------|
| Task | Name | MM/DD & Day |

## Date and Time
[Extracted date]

## Location
[Location or Virtual]

## Meeting Title
[Title]

## Attendees
- Name 1
- Name 2

## Materials Used
[Documents mentioned]

## Agenda
• Item 1
• Item 2

## Decisions
[Decisions made]

## Detailed Minutes
### Project Progress Report
[Details]

### Confirmation of Issues/To Do Status
[Status]

### Other Contact Items
[Other items]

## Next Meeting
- **Date and Time:** [Date]
- **Location:** [Location]
- **Attendees:** [List]

AI Configuration

The MOM generator uses these OpenAI settings:

{
model: "gpt-3.5-turbo", // or gpt-4
temperature: 0.3, // Lower = more focused
max_tokens: 2000 // Max output length
}

Best Practices

Input Format

For best results, structure input like:

[Meeting Name] - [Date]

Attendees: [Names]

Discussion:
[Speaker]: [What they said]
[Speaker]: [What they said]

Action Items:
- [Task] by [Person] by [Date]
- [Task] by [Person] by [Date]

Next Meeting: [Date] at [Time]

Common Use Cases

1. Direct Transcript:

{
"meetingNotes": "John: I think we should prioritize the dashboard.\nSarah: Agreed, let's do that first.\nJohn: Great, I'll create tickets by Friday."
}

2. Summary Notes:

{
"meetingNotes": "Sprint Planning - Dec 26\nTopics: Dashboard priority, Q1 roadmap\nDecided to focus on dashboard first\nJohn owns ticket creation (due Friday)"
}

Error Handling

Rate Limiting

If OpenAI rate limits are hit:

{
"error": "Failed to generate MOM: Rate limit exceeded"
}

Solution: Wait and retry, or upgrade OpenAI plan.

Token Limits

Very long transcripts may exceed token limits:

{
"error": "Failed to generate MOM: maximum context length exceeded"
}

Solution: Summarize or split the transcript.