Voice Capture

Connect your recordings to whatever you need

You speak an idea into your phone — and it shows up on its own in Notion, in a spreadsheet, in an email or in your own journal. No programming involved: all it takes is a key from the app and one ready-made scenario.

1. Create a keyStart here — without it none of this works. Make (formerly Integromat)The most powerful route. From here you can go anywhere. NotionEvery note as a new page in a database. Apple ShortcutsThe latest transcript into the clipboard, an email, anywhere. Widget and buttonsOne-tap recording straight from the Home Screen. Technical documentation →For those who want to build it themselves.

1. Create a key

A key is the password an outside tool uses to sign in to your transcripts. You create it in the app and can revoke it any time.

  1. Open Settings in the app The gear icon in the top right.
  2. Connect to external apps → Create key The key starts with vcr_ and you'll see it only once. From then on the server keeps just its fingerprint, so it can't show it to you again — a lost key can't be looked up, you simply create a new one.
  3. Tap “Copy ready-made URL” This is the comfortable option: you get the whole address with the key already inside. It looks like this:
    https://europe-west3-voice-recorder-2026.cloudfunctions.net/v2_get_recording?key=vcr_…
    Keep it in your notes for now — in a moment you'll paste it into Make or into a Shortcut.

That address behaves like a password. Whoever has it reads your transcripts. Don't send it over ordinary chat, don't put it in a public repository, and don't leave it sitting in the browser on a shared computer.

What the key can do: read your recordings, transcripts and AI outputs.
What the key can't do: delete anything, change settings, touch your account or download audio. Even if it leaked, nobody can delete anything of yours with it.

You can have up to five keys — it's worth giving each tool its own, so you can revoke just that one. Once revoked, it stops working within about a minute.

2. Make: the engine everything else plugs into

Make is a drawing canvas for automations: you put “from where” on the left, “to where” on the right, and it flows across on its own. The free plan handles 1,000 operations a month, which is plenty for voice notes.

We'll build a scenario that checks for new transcripts every hour and passes them on.

  1. Create a scenario and add an HTTP module On the canvas click the big +, search for HTTP and pick Make a request.
  2. Set up the request
    • URL — paste the ready-made address from step 1 and add &limit=20 at the end
    • MethodGET
    • Parse response — turn it on (Yes). Without this switch you get one long blob of text instead of neatly separated fields.
    Click Run once. When your latest recordings appear at the bottom, you're set.
  3. Split the list into individual notes The response is a bundle with an items list. Add the Flow Control → Iterator module and give it items from the HTTP module in the Array field. From this point on, everything to the right runs separately for each note.
  4. Skip the unfinished ones A recording doesn't have its transcript the second you stop talking. After the Iterator add Flow Control → Filter with the condition status Equal to READY. The rest get picked up on the next pass.
  5. Connect the destination Notion, Google Sheets, Todoist, email, Slack… The most useful fields:
    fieldwhat's in it
    titlethe name the AI came up with
    transcript.textthe full verbatim transcript
    recorded_atwhen you were speaking
    durationlength in seconds
    outputs[].sections.summarythe summary, when the recording has an AI output
    ida unique ID — handy against duplicates
  6. Set how often it should look At the bottom left of the first module click the clock and pick, say, every hour. Then save the scenario and flip the switch to ON.

So you don't get the same note five times

The scenario above always takes the last twenty — so on every run it also hits the ones it has already sent. Two ways out, pick whichever suits you:

The simpler one: let it check the destination. In Notion add a text field Recording ID to the database, put a Notion → Search Objects module matching on id before the write step, and behind it a filter “continue only if nothing was found”.

The cleaner one: let Make remember where it got to. The response includes a next_since field — a marker saying “you've read up to here”.

The server then returns only what has arrived since last time, all by itself. Send the value from next_since back exactly as it came — don't convert it, don't round it.

Do you prefer Zapier or n8n? The procedure is the same, only the names differ: Zapier has “Webhooks by Zapier → GET” and n8n the “HTTP Request” module.

3. Notion: every note as a page

Notion has no way of reaching into Voice Capture by itself, so Make from the previous chapter goes in between. Once you have that running, only a few steps are left.

  1. Prepare the database In Notion create a database (Table) with these columns: Name (Title), Date (Date), Transcript (Text), Recording ID (Text).
  2. Let Notion in Open notion.so/my-integrations, click New integration and copy the token you get. Then go back to the database, top right ⋯ → Connections → Connect to and pick it. Without this step Make won't see the database even with a correct token — it's the most common place where people get stuck.
  3. In Make add Notion → Create a Database Item Map the columns to the fields from the Iterator: Nametitle, Daterecorded_at, Transcripttranscript.text, Recording IDid.

From now on all you do is talk into your phone and the notes land in Notion on their own.

4. Apple Shortcuts

A shortcut is a little program without programming — you assemble it from blocks. This one pulls out the latest transcript and does whatever you want with it.

  1. Open Shortcuts and tap + The Shortcuts app comes preinstalled on the iPhone. Top right, +.
  2. Add “Get Contents of URL” Paste the ready-made address from step 1 into the URL field and add &limit=1 at the end.
  3. Add “Get Dictionary Value” In the Key field type:
    items.1.transcript.text
    That says “take the first recording and the transcript text out of it”. Shortcuts numbers from one.
  4. Add what should happen next Copy to Clipboard, Send Email, Create Note, Quick Look… anything you like.
  5. Name it and keep it within reach Through ⋯ → Add to Home Screen, or in iPhone Settings under the Action Button. With Siri it then also works as “Hey Siri, latest note”.

Want the AI summary instead of the verbatim transcript? Swap the key in the third step for:

items.1.outputs.1.sections.summary

Just bear in mind that the summary only exists if you had an AI output created for the recording.

Recording from a Shortcut isn't possible yet. The key from the app can only read, so a Shortcut can pull transcripts out but can't create a new recording. If you need that, drop me a line — I can issue a key with write access by hand.

5. Widget and buttons: one-tap recording

This isn't automation and needs no key — you just keep asking about it. The point is not having to hunt for the app icon the moment something occurs to you.

Widget on the Home Screen

  1. Press and hold an empty spot on the Home Screen The icons start wiggling. Tap + in the top left.
  2. Find Voice Capture There's a search field at the top. Pick the Quick note widget.
  3. Add the widget and tap Done Tapping it opens the app and starts recording right away — you don't have to press anything else.

On the Lock Screen

Press and hold on the Lock Screen → CustomizeLock Screen → tap the strip under the clock → pick Quick note. You can then start recording without unlocking the phone.

Action Button

Got an iPhone 15 Pro or newer? Settings → Action Button, scroll to Shortcut and pick Voice Capture. Holding the side button then records even blind in your pocket.

Control Center

On iOS 18 and newer: pull Control Center down from the top, press and hold an empty spot, tap Add a Control and find Record a note.

When it doesn't work

what you seewhat to do
401 or “Unauthorized” The key is mistyped or revoked. Create a new one and paste the whole address again — with no trailing spaces.
An empty list comes back Either you have no recordings sent to the servers (check in Settings what you allow to be sent), or your since points into the future.
The transcript is missing but the recording is there It's still being processed. status goes AWAITING_TRANSCRIPTTRANSCRIBINGREADY; take only READY.
status is NO_CREDIT You've run out of minutes. Top them up in the app and have the recording transcribed again.
The transcript is empty and no_speech is true There was no speech in the recording. That isn't an error — the app would rather return nothing than invent the content.
An old note shows up as new A recording made offline arrives only once the phone is online. That's why it pays to watch for duplicates by id.

How much you may read

There's no hard limit set yet, but take it in batches (limit up to 100), not in a loop one at a time. Checking once an hour is more than enough for voice notes — for every key the app shows when it was last used.

Want to write it yourself? The full description of the interface, with examples in Python and shell, is in the technical documentation.