saveRecordingFile@v1

Save a file recorded with record@v1 as a Recording object in the API.

VersionsaveRecordingFile@v1
Runs ininbound-call and your own branches · api-initiated and inbound-sms · hangup, postHangup and events.ready

Parameters

NameTypeRequiredDefaultDescription
filestringyes1..1024 characters
transcriptionobject
transcription.languageaf-ZA, am-ET, ar-AE… (140 values)Language for Speech Recognition and Text-to-Speech. See Voices & Audio
accepts ${{ }}
transcription.enabledbooleantrueaccepts ${{ }}
transcription.sentimentbooleantrueaccepts ${{ }}
transcription.nerbooleantrueaccepts ${{ }}
transcription.piibooleantrueaccepts ${{ }}

Every parameter that accepts ${{ }} can be computed from an expression.

How it works

see: https://docs.callr.com/reference/recordingsget

Examples

- action: record@v1
  result: $file

- action: saveRecordingFile@v1
  params:
    file: ${{ $file }}
  result: $id # (string) Recording object ID in the API

Transcription is enabled by default

You can use the 'ready' event to get the transcription result:

- action: saveRecordingFile@v1
  params:
    file: ${{ $file }}
  events:
    ready:
      # example, send an SMS with the transcription
      - action: sms@v1
        params:
          body: >
            Hello ${{ call.fromNumber }}, here is what you said:
            "${{ transcription_leg_a }}"
          to:
            - ${{ call.fromNumber }}

Actions in the 'ready' event have access to the following variables

- recording
- transcription_leg_a
- transcription_leg_b
- chat
- chat_text

To disable transcription on recording, use the following

- action: saveRecordingFile@v1
  params:
    file: ${{ $file }}
    transcription:
      enabled: false

Result

Set result: $myVariable to keep it. SID of the Recording (recording.sid). Lowercase since compat.version 2025-09-01, uppercase in 2024-04-01 (and when a recording was already in progress)

Type: string

"0d0f9ef6"

Did this page help you?