πŸ”¬ Transcribe Google Drive audio to markdown with Gladia and Google Sheets

⚑ 1 views Β· πŸ”¬ Document Extraction & Analysis

Description

Quick overview

This workflow watches a Google Drive folder for new audio files, sends them to Gladia for asynchronous transcription, saves the resulting Markdown transcript back to Google Drive, and appends a success or failure record (with a link and details) to a Google Sheets log.

How it works

  1. Triggers every minute when a new file is created in a specific Google Drive folder.
  2. Downloads the new file from Google Drive and uploads the binary audio to Gladia.
  3. Starts a Gladia pre-recorded transcription job and waits a configurable interval before checking status.
  4. Polls Gladia for the job result until the status is β€œdone”, an error is returned, or the maximum attempt limit is reached.
  5. When completed, formats the transcript into a Markdown file (including metadata and speaker utterances when available) and uploads it to a target Google Drive folder.
  6. Appends a row to Google Sheets with the timestamp, source file name, duration, status, transcript link, and a short preview, or logs a failure row with the error or timeout reason.

Setup

  1. Add Google Drive OAuth2 credentials and set the source folder ID to watch and the destination folder ID where transcripts are saved.
  2. Create a Gladia HTTP Header Auth credential (header name x-gladia-key) and select it on the Gladia upload, job start, and result request steps.
  3. Add Google Sheets OAuth2 credentials and set the spreadsheet ID and sheet tab name for both the success and failure logging steps.
  4. (Optional) Adjust wait_seconds and max_attempts to match your typical audio length and Gladia processing time.

Requirements

Customization

Additional info

Gladia bills per minute of audio, so cost scales with file length (check current Gladia pricing). For long recordings, raise max_attempts so polling does not give up before the job finishes. The workflow logs both successes and failures to the sheet, so a failed row still records its reason rather than disappearing. It runs on both n8n Cloud and self-hosted, since it uses only core HTTP Request nodes and no community node.

πŸ”— Nodes Used

Google Sheets, HTTP Request, Google Drive, Google Drive Trigger

πŸ“₯ Import

Download workflow.json and import into n8n: Workflow menu β†’ Import from File

πŸ“– Importing guide Β· πŸ”‘ Credential setup