Skip to main content

Uploading Meetings Manually

If you already have a recording or a text transcript from another tool, you can bring it into Harmony without re-recording anything. Harmony supports three upload methods: file upload, URL import, and transcript paste.

Open the upload dialog

  1. In the sidebar, go to Meetings.
  2. The upload dialog can be opened from any of these places:
    • The Upload option in the Quick Launch panel on the Start tab.
    • The Add Conversation action in the toolbar.
    • The global command palette (Cmd/Ctrl+K) — pick the Upload tile.

The dialog opens with two tabs at the top: Transcript (selected by default) and Recording.

Upload an audio or video file

Use the Recording tab to upload a media file from your computer.

  1. In the upload dialog, select the Recording tab.
  2. Make sure the Upload sub-tab is selected (not URL).
  3. Click the upload area or drag and drop your file. The area reads "Click to upload or drag and drop" with the hint "Audio or video files (max 2 GB)".
  4. Once a file is selected, you'll see "Selected: [filename]".
  5. Fill in the form fields below (see Upload form fields).
  6. Click Upload.

Large files use multipart upload, with progress indicators ("Preparing upload…", "Uploading [X] parts…", "Upload complete. Finishing up…"). When done, a toast confirms "Recording uploaded successfully." and the conversation appears in your Meetings list with processing in progress.

Supported formats

Harmony accepts standard audio and video formats — including MP3, WAV, MP4, WebM, OGG, FLAC, M4A, AAC, GSM, and more. The file must have an audio or video MIME type. Documents, images, and other file types are rejected with "Please upload an audio or video file."

File size limit

The maximum file size is 2 GB (2,147,483,648 bytes). Files over the limit show "The maximum file size is [X] MB." If you need to upload something larger, trim it or split it into shorter segments.

Import from a URL

Use this when your recording is hosted online — for example a public cloud storage link.

  1. In the upload dialog, select the Recording tab.
  2. Select the URL sub-tab.
  3. Paste a direct link to the file (placeholder: https://example.com/recording.mp3).
  4. Harmony verifies the URL automatically (with an 800 ms debounce):
    • Accessible: green checkmark, "URL is accessible and valid for recording."
    • Not accessible: alert icon, "The provided URL is not publicly accessible."
    • Invalid URL: "Invalid URL format."
  5. Fill in the form fields and click Upload (the button stays disabled until the URL is verified as accessible).

The URL must be publicly downloadable without sign-in. Authenticated or login-walled URLs are reported as inaccessible. Download the file first and use the file upload method instead.

Paste a text transcript

Use this when you only have the text of the conversation (no audio or video).

  1. In the upload dialog, select the Transcript tab.
  2. Paste your transcript text into the large text area (placeholder: "Paste your conversation transcript here…").
  3. Fill in the form fields below.
  4. Click Upload.

Harmony processes the pasted text as a conversation — generating insights and action items based on the content. No transcription step is needed since you are providing the text directly. Plain text is the supported input — there is no guarantee that SRT/VTT cue formatting will be parsed as structured turns from the paste box; treat your input as raw text.

Press Shift+Enter anywhere in the upload dialog to submit the form.

Upload form fields

All upload methods share the same form fields:

When uploading a meeting or transcript to Harmony, you will be presented with a form that asks for information to help organize the conversation correctly in your workspace. Providing this information ensures that each meeting is categorized, searchable, and linked to the right people and teams.

First, you will be asked to specify the Team for the conversation. This is the internal team within your organization that the conversation belongs to. If you have already been assigned to a team, it will usually be selected by default. Assigning the correct team ensures the meeting appears in the right dashboards, activity feeds, and reports.

Next, you must identify the Contact involved in the conversation. The contact is the primary external participant—such as a customer, prospect, or partner. Begin typing their name into the search field, and Harmony will suggest matching contacts from your workspace directory. Attaching the correct contact makes future searching and relationship management much easier.

You’ll also be prompted to set the Owner of the recording. The owner is the Harmony user responsible for the conversation—typically, this defaults to your account, but you can assign it to another workspace member if appropriate. Having an accurate owner is particularly important for access control and reporting.

The Medium describes the type of conversation. You must select whether the conversation took place via a call, video conference, or chat. While “Chat” is selected by default, be sure to choose the option that matches the recording you are uploading. This classification helps with filtering, analytics, and workflow logic inside Harmony.

Finally, you may see additional Custom Fields depending on how your organization has configured Harmony. These fields are optional and are used to capture any other relevant details deemed important by your workspace administrators—such as project codes, account regions, or campaign tags. Fill them in if they apply to your conversation.

If you try to submit the upload form without filling in all the required fields, Harmony will prompt you to complete them to ensure data quality and consistency throughout your workspace.

If required fields are missing, clicking Upload shows "Please fill in all required fields."

After uploading

Once uploaded, Harmony runs the processing pipeline:

  1. Transcription — if an audio or video file was uploaded, speech is converted to text with speaker identification.
  2. Extraction — AI extracts action items, summaries, and other structured data from the transcript.
  3. Insight generation — insights are generated based on the Insight Definitions in the projects this meeting belongs to.
  4. Goal evaluation — automatic goal criteria are checked.
  5. Scoring — scorecard rules are evaluated (if configured).

The conversation appears in your Meetings list with a Queued or Transcribing status badge. The page updates live as processing progresses — refresh the conversation in the app to see the latest state. Harmony does not send an email or OS notification when processing finishes; check the meeting in the app.

Most meetings finish in a few minutes. Recordings of an hour or more can take 10–15 minutes.

Organise your uploads

Uploaded meetings lack calendar context, so a quick organising pass helps everything turn up in the right places.

  • Match speakers: open the Transcript tab and match speakers to contacts or workspace users so the right names show up everywhere.
  • Set tags: open the Properties tab and add tags (e.g. demo, discovery, onboarding) to make the meeting easier to filter.
  • Confirm Team / Owner: if the upload picked the wrong values, fix them in Properties so insights and reports include the meeting in the right scopes.

Uploading via the Public API

For bulk imports or automated pipelines, use the Public API:

To facilitate bulk imports or automate meeting ingestion, Harmony provides a set of Public API endpoints that cover a range of upload scenarios. Here is an explanation of each endpoint and what it is intended for:

To upload actual audio or video files—such as recordings from calls or meetings—you can use the POST /v1/conversations/upload endpoint. This endpoint expects a file upload in multipart/form-data format. Once submitted, Harmony will take your audio or video file, process the speech into a transcript, and build a complete conversation record in your workspace.

If you already have a machine-readable transcript, perhaps generated by another speech-to-text tool or provided by your recording platform, you can submit it directly to Harmony using the POST /v1/conversations/transcript-upload endpoint. This endpoint accepts a pre-parsed transcript file in JSON format, with a maximum file size of 10 MB. Harmony will parse this structured transcript, extract participants and message turns, and create a new conversation record based on the file’s content.

For cases where the transcript content is available as plain text (rather than a structured file or media), you should use the POST /v1/conversations endpoint. This lets you create a new conversation in Harmony by providing an inline text transcript as part of the API request, rather than uploading a file.

Organizations that need to import a batch of messages where participant mapping is known and structured, such as chat logs or exported messaging threads, should use the POST /v1/conversations/structured-import endpoint. This endpoint is designed for structured imports, handling details like explicit participant identities and time-stamped message turns.

Finally, if your data source provides files that can be accessed via a URL or if you want Harmony to fetch files directly from remote storage, the POST /v1/conversations/import-url endpoint is available. This allows you to provide a link to your audio, video, or transcript file, and optionally attach the import to a specific team or contact within your workspace. Harmony will fetch the file from the specified URL and proceed with processing just as if you had uploaded it manually.

Each of these endpoints is suited to a particular workflow or integration model. Carefully select the one that matches your source data and requirements for how you want meetings organized within Harmony.

See API access for authentication and rate-limit details.

Troubleshooting

Upload looks stuck: processing usually takes a few minutes; long recordings can take 10–15 minutes. If a recording is still queued or transcribing after 30 minutes, refresh the page and check the conversation status badge. If it remains stuck, contact support with the conversation reference.

Quality is poor on transcript: see Transcription quality for the full list of factors and remediation. There is no shipped custom-vocabulary feature today.

File too large: files over 2 GB are rejected. Reduce the audio bitrate, extract audio from a video file, or split the recording into shorter segments.