LingintLingint developer docs

POST /dialog2meeting

POST/third-party/note-taker/dialog2meeting

Takes a speaker-labeled dialog transcript and produces a structured meeting note as both Markdown and a DOCX file. The task runs asynchronously — the response returns a task_id immediately.

Request

Content-type: multipart/form-data

FieldTypeRequiredDescription
dialogbinary (JSON file)YesBinary upload of a JSON file containing the dialog array. Download dialog.json from result.dialog_url returned by /audio2dialog and re-upload it here. Each entry has the shape {"speaker_id":"speaker_1","start_seconds":0,"end_seconds":3.2,"text":"..."}.
templatebinary (DOCX)NoA Word document (.docx) with [Insert X] placeholders. Each placeholder is filled from the dialog. If omitted, a built-in Vietnamese administrative meeting template is used.
speakerMapJSON stringNoJSON array preferred — each entry {"speaker_id": string, "name": string, "gender"?: "male"|"female"|null}. gender is an optional hint used for pronoun choice. Example: [{"speaker_id":"speaker_1","name":"Alice","gender":"female"},{"speaker_id":"speaker_2","name":"Bob","gender":"male"}]. The legacy object form {"speaker_1":"Alice","speaker_2":"Bob"} is still accepted (no gender).
contextTextstringNoMeeting context such as agenda items, known attendees, or decisions to look for. Helps focus the note on relevant content.

Templates

Upload a DOCX file with [Insert X] placeholders anywhere in the document body (e.g. [Insert meeting objective], [Insert action items]). Each placeholder is filled from the dialog only — content that is not in the source is not invented.

If no template is provided, a built-in Vietnamese administrative meeting template is used, including agenda items, attendee list, discussion summary, decisions, and action items.

Speaker names

The speakerMap field is the last opportunity to correct speaker names before the note is written. Providing accurate names here produces a significantly more useful output than leaving generic IDs like speaker_1 in the note.

Example

curl https://sandbox.lingint.ai/api/v1/third-party/note-taker/dialog2meeting \
  -H "X-API-Key: lk_..." \
  -F "dialog=@dialog.json;type=application/json" \
  -F 'speakerMap=[{"speaker_id":"speaker_1","name":"Alice","gender":"female"},{"speaker_id":"speaker_2","name":"Bob","gender":"male"}]' \
  -F "contextText=Quarterly review meeting, focus on Q2 targets"

Response

202 Accepted

{
  "ok": true,
  "data": {
    "task_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
}

Result schema

When the task reaches status=completed, the result field contains:

FieldTypeDescription
markdownstringFull Markdown meeting note returned inline.
docx_urlstringSigned URL pointing to the DOCX version of the note. Valid for 24 hours after the task completes.
Important
DOCX URLs expire 24 hours after task completion. Download or rehost the file within that window. The Markdown in markdown does not expire.

See Polling task status for how to retrieve the result.