Turn Zoom recordings into multilingual HubSpot call notes

Every weekday evening, your Zoom sales calls get transcribed in their original language, summarized in English, and filed on the right HubSpot contact.

Agentic Task
Mistral AIZoomHubSpotSlackSalesMeeting WorkflowsAI ReportsDaily Digests
PromptCreate

Every weekday at 7pm, on a cron trigger, use Zoom List User Recordings to pull every cloud recording created in the last 24 hours for our sales users. This workflow exists so that a team who simply records to Zoom cloud gets a proper call-notes layer without paying for a dedicated revenue intelligence tool, so work only from the raw recording files and do not assume any transcript or summary already exists.

Filter out the noise before spending anything on transcription. Skip any recording with a duration under two minutes, since those are almost always test calls, accidental starts, or no-shows. Keep a count of what you skipped so it can be reported at the end.

For each substantive recording, send the audio to Mistral AI Create Transcription. It accepts an uploaded file, a file id, or a URL, so hand it the recording's audio file directly. Note that Zoom download URLs need our Zoom access token attached, so download the file first if a plain URL will not authenticate. Ask for speaker labels so the transcript reads as a real multi-party conversation showing who said what. Pass our product names and rep names in as transcription vocabulary hints, up to 100 words or phrases, so proper nouns and product names come out spelled correctly rather than phonetically. Record the detected language of the call.

Many of our calls are not in English. Keep the transcript in its original language. Do not translate it and do not replace it with an English version, because our in-region sales leaders want to read the actual words that were said. Then use Mistral AI Chat Completion to write a summary in English from that transcript. The summary must cover the key decisions reached, any objections the customer raised, and the explicit next steps with an owner named against each one. If a next step has no clear owner, say so rather than inventing one.

Match the call participants to our CRM. Take the participant email addresses from the Zoom recording metadata and look each one up with HubSpot Search Contacts. When you find a contact, also run HubSpot Search Deals to find any open deal associated with them.

File the write-up with HubSpot Create Note, associated to the matched contact and to the open deal when one exists. The note should carry both the English summary and the original-language transcript, and be tagged with the detected call language so it is obvious at a glance which language the call was held in.

Handle the unmatched case explicitly, because this is the part that makes the workflow usable in practice. If no HubSpot contact can be matched for a recording, do not silently drop it. Hold it aside along with the meeting topic, the participant email addresses you tried, and the detected language, so a human can link it by hand.

Finish with Slack Send a Message posting an evening digest to our sales channel. List each call with its language and a one-line outcome, note which contact and deal it was filed against, then explicitly flag every recording where no HubSpot contact could be matched under a clear heading so someone can pick those up. Close with how many short recordings were skipped.

Example output

Evening call digest: 4 recordings today 1. Acme GmbH renewal (German, 34 min). Filed to Lena Fischer, deal "Acme GmbH Renewal 2026". Outcome: agreed to a 12 month renewal, pending legal review of the data processing terms. 2. Northwind expansion (English, 22 min). Filed to Priya Raman, deal "Northwind Q3 Expansion". Outcome: wants seat based pricing in writing before committing, decision expected Tuesday. 3. Bureau Lemoine discovery (French, 41 min). Filed to Marc Lemoine, no open deal. Outcome: strong interest, blocked by an incumbent contract running to December. Needs a human: 4. "Zoom Meeting 8823941" (Spanish, 27 min). No HubSpot contact matched for the participant emails on this recording. Please link it to the right record by hand. 2 recordings under two minutes were skipped.

What does this prompt do?

  • Checks each weekday evening for the Zoom cloud recordings from the past 24 hours, and skips anything under two minutes so test calls and no-shows never clutter your CRM.
  • Transcribes every real call with speaker labels and keeps the transcript in the language it was actually spoken, so your in-region team can read the real words.
  • Writes an English summary of each call covering the decisions reached, the objections raised, and the next steps with an owner named against each one.
  • Files the write-up on the matching contact and any open deal, tagged with the call language, then posts an evening digest to your sales channel that flags any recording it could not match to a person.

What do I need to use this?

  • A Zoom account on a plan that includes cloud recording, with your sales calls saved to the cloud rather than locally
  • A Mistral AI account, which handles both the transcription and the English summary
  • A HubSpot login that can read contacts and deals and add notes to them
  • A Slack workspace and the channel where your sales team wants the evening digest to land
  • A short list of your product names and rep names, so proper nouns come out spelled correctly

How can I customize it?

  • Change the timing. Seven in the evening suits an end-of-day digest, but you can run it later, earlier, or every day including weekends.
  • Move the two-minute cutoff up or down to match how long your genuine calls tend to run.
  • Pick the summary language. English is the default for head office, but summaries can be written in whichever language your leadership reads.
  • Send the digest to a different channel, or split it into one regional channel per language.

FAQs

Do I need a call recording or revenue intelligence tool for this?
No, and that is the point. This works directly from the recordings Zoom already saves to the cloud, so you do not need to buy or install a separate conversation intelligence product just to get transcripts and call notes into your CRM.
What happens with calls that are not in English?
The transcript stays in the language the call was held in, and only the summary is written in English. That way your regional sales leaders can read exactly what the customer said, while head office still gets a summary it can scan.
Does the English summary replace the original transcript?
No. Both are kept on the same note in HubSpot, and the note is tagged with the detected language of the call so you can tell at a glance which calls were held in which language.
What if we cannot tell who was on the call?
Any recording where no matching contact could be found is called out separately in the evening digest, with the meeting name and the email addresses that were tried, so someone on your team can link it to the right record by hand.
Will short or accidental recordings get logged too?
No. Anything under two minutes is skipped, since those are nearly always test calls, misfires, or no-shows. The digest tells you how many were skipped so nothing disappears quietly.

Related templates

Auto-fix your calendar when a flight slips, and flag what's at risk

When your flight moves, your calendar times get corrected automatically and you get a Slack note naming the meetings you're about to miss.

Google Calendar
AviationStack
Slack
Agentic Task
Trace phishing emails to the sending IP and report abuse

Every 15 minutes, forwarded phishing reports get traced back to the server that really sent them, with a verdict in Slack and the worst senders reported.

AbuseIPDB
Gmail
Slack
Agentic Task
Log Agorapulse social conversations to HubSpot contacts

Twice every weekday, the conversations from your social inbox land on the right HubSpot contact timelines, with a Slack recap for sales.

Agorapulse
HubSpot
Slack Bot
Agentic Task
Turn procurement portal tenders into CRM deals each morning

Every weekday at 7am, sign in to the tender portals you track, filter new notices against your bid criteria, and open a deal for the ones worth chasing.

Anchor Browser
Google Sheets
HubSpot
+1
Agentic Task
Clean up HubSpot contacts from your Amazon SES suppression list

Every morning, find the addresses that hard bounced or filed a spam complaint, update the matching HubSpot contacts, and post a short Slack recap.

Amazon SES
HubSpot
Slack Bot
Agentic Task
Provision customer entitlements in DynamoDB when a deal is won

When a HubSpot deal hits Closed Won, the customer's plan, seats and renewal dates land in your DynamoDB accounts table, with a Slack note showing what changed.

HubSpot
Amazon DynamoDB
Slack Bot
Agentic Task

Your calls are already recorded. Start actually using them.

Give every Zoom call a speaker-labelled transcript, an English summary, and a home on the right contact record, in any language your team sells in.