tl;dv
App · Meeting Notes · 5 actions
Work with your tl;dv meeting recordings: search past meetings, read a meeting's full transcript with speakers and timestamps, pull the AI notes as topics or ready-to-post markdown, and import recordings from elsewhere for tl;dv to transcribe.
Actions
| Action | What it does |
|---|---|
| Get tl;dv meeting | Get one meeting's details: its title, when it happened, how long it ran, who organised it, and who was invited. |
| Get tl;dv meeting notes | Get a meeting's AI notes: the topics tl;dv identified with a summary each, the individual note lines with timestamps, and the whole thing already rendered as markdown. |
| Get tl;dv transcript | Get a meeting's full transcript as a list of segments, each with the speaker, what they said, and where it falls in the recording. |
| Import recording into tl;dv | Import a recording from a public URL so tl;dv transcribes it and writes notes. |
| List tl;dv meetings | List recorded meetings, optionally searched by text and filtered by date range or whether the meeting was internal or external. |
Get tl;dv meeting
Get one meeting's details: its title, when it happened, how long it ran, who organised it, and who was invited.
Inputs
- Meeting ID
meeting_idtextRequired - The meeting's tl;dv id. You can get this from the List tl;dv meetings action, or from the end of a tldv.io meeting URL.
Outputs
meetingobject
Example output
{
"meeting": {
"conference_id": "abc-defg-hij",
"duration": 1832,
"happened_at": "2026-01-28T14:00:00.000Z",
"id": "65a1b2c3d4e5f6a7b8c9d0e1",
"invitees": [
{
"email": "ada@example.com",
"name": "Ada Lovelace"
},
{
"email": "grace@example.com",
"name": "Grace Hopper"
}
],
"name": "Weekly product sync",
"organizer": {
"email": "ada@example.com",
"name": "Ada Lovelace"
},
"template": "Product sync",
"url": "https://tldv.io/app/meetings/65a1b2c3d4e5f6a7b8c9d0e1"
}
}Get tl;dv meeting notes
Get a meeting's AI notes: the topics tl;dv identified with a summary each, the individual note lines with timestamps, and the whole thing already rendered as markdown.
Inputs
- Meeting ID
meeting_idtextRequired - The meeting's tl;dv id. You can get this from the List tl;dv meetings action, or from the end of a tldv.io meeting URL.
Outputs
countnumber- Number of individual notes.
markdowntext- The same notes already formatted as markdown, which is usually what you forward to Slack, Notion, or an email.
noteslist- Individual note lines, in order.
topicslist- The topics tl;dv split the meeting into, each with its own summary.
Example output
{
"count": 1,
"markdown": "## Billing bug\n- Ship the billing fix before Friday.",
"notes": [
{
"segment_id": "s14",
"text": "Ship the billing fix before Friday.",
"timestamp": 421.0,
"topic_id": "t1"
}
],
"topics": [
{
"id": "t1",
"order": 1,
"summary": "The team agreed to ship the fix this week.",
"title": "Billing bug"
}
]
}Get tl;dv transcript
Get a meeting's full transcript as a list of segments, each with the speaker, what they said, and where it falls in the recording.
Inputs
- Meeting ID
meeting_idtextRequired - The meeting's tl;dv id. You can get this from the List tl;dv meetings action, or from the end of a tldv.io meeting URL.
Outputs
countnumber- Number of transcript segments.
meeting_idtext- The meeting the transcript belongs to.
segmentslist- The transcript in order, one entry per turn.
transcript_idtext- tl;dv's id for this transcript.
Example output
{
"count": 1,
"meeting_id": "65a1b2c3d4e5f6a7b8c9d0e1",
"segments": [
{
"end_time": 15.1,
"speaker": "Ada Lovelace",
"start_time": 12.4,
"text": "Let's start with last week's numbers."
}
],
"transcript_id": "65a1b2c3d4e5f6a7b8c9d0e2"
}Import recording into tl;dv
Import a recording from a public URL so tl;dv transcribes it and writes notes. Use this to get recordings from somewhere else into tl;dv. Transcription happens in the background, so this returns a job id rather than a finished meeting.
Inputs
- Name
nametextRequired - What to call the meeting in tl;dv.
- URL
urltextRequired - Publicly reachable link to the media file. tl;dv supports .mp3, .mp4, .wav, .m4a, .mkv, .mov, .avi, .wma, and .flac.
- Happened at
happened_atdate and time - When the meeting took place, ISO 8601. Defaults to now, so set this when importing something older.
- Participants
participantstext - Comma-separated email addresses of who was on the call.
- Dry run
dry_runtrue/false - Validate the request without actually importing anything. Useful for checking a URL is reachable.
Outputs
job_idtext- The background job tl;dv queued for the import. The meeting appears in List tl;dv meetings once it finishes processing.
Example output
{
"job_id": "65a1b2c3d4e5f6a7b8c9d0e3"
}List tl;dv meetings
List recorded meetings, optionally searched by text and filtered by date range or whether the meeting was internal or external. Returns the meeting ids the transcript and notes actions take.
Inputs
- Query
querytext - Search meetings by title.
- From date
from_datetext - Only meetings on or after this date, as YYYY-MM-DD or a full ISO 8601 timestamp.
- To date
to_datetext - Only meetings on or before this date, as YYYY-MM-DD or a full ISO 8601 timestamp.
- Meeting type
meeting_typetext - Narrow to internal meetings, where everyone is from your organisation, or external ones, which include at least one outside guest. Leave blank for both.One of:
internal(Internal only),external(External only). - Only participated
only_participatedtrue/false - Only return meetings the API key's own user attended, rather than everything they can see.
- Page
pagenumber - Which page of results to return, starting at 1.
- Limit
limitnumber - How many meetings to return per page, 1 to 100. Defaults to 50.
Outputs
countnumber- Number of meetings on this page.
meetingslist- Meetings on this page.
pagenumber- Which page this is, starting at 1.
page_sizenumber- How many meetings each page holds.
pagesnumber- How many pages match the filters in total.
totalnumber- How many meetings match the filters in total.
Example output
{
"count": 1,
"meetings": [
{
"conference_id": "abc-defg-hij",
"duration": 1832,
"happened_at": "2026-01-28T14:00:00.000Z",
"id": "65a1b2c3d4e5f6a7b8c9d0e1",
"invitees": [
{
"email": "ada@example.com",
"name": "Ada Lovelace"
},
{
"email": "grace@example.com",
"name": "Grace Hopper"
}
],
"name": "Weekly product sync",
"organizer": {
"email": "ada@example.com",
"name": "Ada Lovelace"
},
"template": "Product sync",
"url": "https://tldv.io/app/meetings/65a1b2c3d4e5f6a7b8c9d0e1"
}
],
"page": 1,
"page_size": 50,
"pages": 3,
"total": 118
}