Appearance
For clean Markdown of any page, append .md to the page URL. For a complete documentation index, see For full documentation content, see For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at
Integrate Power Automate with AssemblyAI
Use our Power Automate & Azure Logic Apps connector to use AssemblyAI's speech AI in your flows.
For the complete documentation index, see llms.txtMicrosoft Power Automate is a low-code workflow automation platform with a rich collection of connectors to Microsoft's first-party services and third-party services. Azure Logic Apps is the equivalent service built for developers and IT pros.The AssemblyAI connector makes our API available to both Microsoft Power Automate and Azure Logic Apps. With the connector, you can use AssemblyAI to transcribe audio data with speech recognition models, analyze the data with speech understanding models, and build generative features on top of it with LLMs. You can supply audio to the AssemblyAI connector and connect the output of our models to other services in your flows.## QuickstartCreate or edit a flow in Power Automate. Add a new action, search for AssemblyAI, and select the action that you want to use.!Search for AssemblyAI actions in Power AutomateYou will be prompted to create a connection to AssemblyAI. Give your connection a name and enter the API key from your AssemblyAI dashboard, and click Create new.!Create a connection to AssemblyAI in Power AutomateFinally, configure your AssemblyAI action. Continue reading to learn more about all the available actions.!Configure an AssemblyAI action in Power Automate## Upload a FileTo transcribe an audio file using AssemblyAI, the file needs to be accessible to AssemblyAI. If your audio file is already accessible via a URL, you can use your existing URL.Otherwise, you can use the
Upload a Media Fileaction to upload a file to AssemblyAI. You will get back a URL for your file which can only be used to transcribe using your API key. Once you transcribe the file, the file will be removed from AssemblyAI's servers.## Transcribe AudioTo transcribe your audio, configure theAudio URLparameter using your audio file URL. Then, configure the additional parameters to enable more Speech Recognition features and Speech Understanding models.The result of the Transcribe Audio action is a queued transcript which will start being processed immediately. To get the completed transcript, you have two options:1) Handle the Transcript Ready Webhook
- Poll the Transcript Status### Handle the Transcript Ready WebhookIf you don't want to handle the webhook using Logic Apps or Power Automate, configure the
Webhook URLparameter in yourTranscribe Audioaction, and implement your webhook following AssemblyAI's webhook documentation.To handle the webhook using Logic Apps or Power Automate, follow these steps:Create a separate Logic App or Power Automate Flow.ConfigureWhen an HTTP request is receivedas the trigger:- SetWho Can Trigger The Flow?toAnyone
- Set
Request Body JSON Schemato:json{ "type": "object", "properties": { "transcript_id": { "type": "string" }, "status": { "type": "string" } } } - Set
MethodtoPOSTAdd an AssemblyAIGet Transcriptaction, passing in thetranscript_idfrom the trigger to theTranscript IDparameter.Before doing anything else, you should check whether theStatusiscompletedorerror. Add aConditionaction that checks if theStatusfrom theGet Transcriptoutput iserror:- In theTruebranch, add aTerminateaction- Set the
StatustoFailed - Set the
CodetoTranscript Error - Pass the
Errorfrom theGet Transcriptoutput to theMessageparameter.
- Set the
- You can leave the
Falsebranch empty.Now you can add any action after theConditionknowing the transcript status iscompleted, and you can retrieve any of the output properties of theGet Transcriptaction.Save your Logic App or Flow. TheHTTP URLwill be generated for theWhen an HTTP request is receivedtrigger. Copy theHTTP URLand head back to your original Logic App or Flow.In your original Logic App or Flow, update theTranscribe Audioaction. Paste theHTTP URLyou copied previously into theWebhook URLparameter, and save.When the transcript status becomescompletedorerror, AssemblyAI will send an HTTP POST request to the webhook URL, which will be handled by your other Logic App or Flow.As an alternative to using the webhook, you can poll the transcript status as explained in the next section.### Poll the Transcript StatusYou can poll the transcript status using the following steps:Add anInitialize variableaction- SetNametotranscript_status - Set
TypetoString - Store the
Statusfrom theTranscribe Audiooutput into theValueparameterAdd aDo untilaction- Configure theLoop Untilparameter with the following Fx code:plaintextThis code checks whether theor(equals(variables('transcript_status'), 'completed'), equals(variables('transcript_status'), 'error'))transcript_statusvariable iscompletedorerror. - Configure the
Countparameter to86400 - Configure the
Timeoutparameter toPT24HInside theDo untilaction, add the following actions:- Add aDelayaction that waits for one second - Add a
Get Transcriptaction and pass theIDfrom theTranscribe Audiooutput to theTranscript IDparameter - Add a
Set variableaction- Set
Nametotranscript_status - Pass the
Statusof theGet Transcriptoutput to theValueparameterTheDo untilloop will continue until the transcript is completed, or an error occurred.Add anotherGet Transcriptaction, like before, but add it after theDo untilloop so its output becomes available outside the scope of theDo untilaction.Before doing anything else, you should check whether the transcriptStatusiscompletedorerror. Add aConditionaction that checks if thetranscript_statusiserror:- In theTruebranch, add aTerminateaction - Set
StatustoFailed - Set
CodetoTranscript Error - Pass the
Errorfrom theGet Transcriptoutput to theMessageparameter.
- Set
- You can leave the
Falsebranch empty.Now you can add any action after theConditionknowing the transcript status iscompleted, and you can retrieve any of the output properties of theGet Transcriptaction.## Connector actionsThe AssemblyAI app for Power Automate provides the following actions:### Files#### Upload a Media FileUpload a media file to AssemblyAI's servers. You can pass theUpload URLoutput field to theAudio URLinput field of Transcribe an Audio File action.### Transcripts#### Transcribe AudioCreate a transcript from a media file that is accessible via a URL. Configure theAudio URLfield with the URL of the audio file you want to transcribe. TheAudio URLmust be accessible by AssemblyAI's servers. If you don't have a publicly accessible URL, you can use the Upload a File action to upload the audio file to AssemblyAI.The output of this action is aqueuedtranscript. Learn how to wait until the transcript is ready here.Configure your desired Speech Understanding models when you create the transcript. The results of the models will be included in the transcript output when the transcript is completed.#### Get TranscriptGet the transcript resource. The transcript is ready when thestatusiscompleted.#### Get Paragraphs in TranscriptGet the transcript split by paragraphs. The API semantically segments your transcript into paragraphs to create more reader-friendly transcripts.You can only invoke this action after the transcript is completed.#### Get Sentences in TranscriptGet the transcript split by sentences. The API semantically segments the transcript into sentences to create more reader-friendly transcripts.You can only invoke this action after the transcript is completed.#### Get Subtitles for TranscriptGet the transcript resource. The transcript is ready when thestatusiscompleted.You can only invoke this action after the transcript is completed.#### Get Redacted AudioFirst, you need to configure PII audio redaction using these fields when you create the transcript:-Redact PII:Yes Redact PII Audio:YesRedact PII Policies: Configure at least one PII policyThen, you can use this action to retrieve the redacted audio of the transcript.You can only invoke this action after the transcript is completed.#### Search Words in TranscriptSearch through the transcript for keywords. You can search for individual words, numbers, or phrases containing up to five words or numbers.You can only invoke this action after the transcript is completed.#### List TranscriptsGet the transcript resource. The transcript is ready when thestatusiscompleted.#### Delete TranscriptDelete the transcript. Deleting does not delete the resource itself, but removes the data from the resource and marks it as deleted.You can only invoke this action after the transcript status iscompletedorerror.## Additional resourcesYou can learn more about using Power Automate with AssemblyAI in these resources:- Power Automate & Logic Apps docs by Microsoft