Retrieve a Recording
Changed onRetrieves one voice recording as audio or metadata, depending on the requested extension. Use this account-level route for saved call or conference media; Video Room recordings are separate resources.
This endpoint supports two different access methods with different authentication requirements:
Public Access (No Authentication Required)
Recording audio files can be accessed directly without authentication. This is useful for external applications to embed recording URLs without exposing SignalWire API credentials. SignalWire recording URLs are long and random, making them difficult to guess or exploit unless you reveal the URL.
Retrieve WAV file
When a recording URI has no extension or a .wav extension, the request will return a binary WAV version of the recording file.
GET https://example.signalwire.com/api/laml/2010-04-01/Accounts/{AccountSid}/Recordings/{Sid}
GET https://example.signalwire.com/api/laml/2010-04-01/Accounts/{AccountSid}/Recordings/{Sid}.wav
Retrieve MP3 file
Setting an extension of ".mp3" on the URI returns a binary MP3 version of the recording. For example:
GET https://example.signalwire.com/api/laml/2010-04-01/Accounts/{AccountSid}/Recordings/{Sid}.mp3
Authenticated Access (Voice Scope Required)
Retrieve Metadata
A recording's metadata, such as duration, cost, time, can be returned by setting the Recording URI's extension to .json. This requires authentication with a Voice-scoped API token.
GET https://example.signalwire.com/api/laml/2010-04-01/Accounts/{AccountSid}/Recordings/{Sid}.json
Permissions
The API token used to authenticate must have the following scopes enabled to make a successful request: Voice.
This permission is only required for authenticated requests to retrieve recording metadata (.json extension).
Learn more about API scopes.
Request
- Base URLhttps://YOUR_SPACE.signalwire.com/api/laml/2010-04-01
- URLhttps://YOUR_SPACE.signalwire.com/api/laml/2010-04-01/Accounts/{AccountSid}/Recordings/{Sid}
- AuthHTTP basic
Path parameters
Universal Unique Identifier.
The unique identifier for the account that is associated with this recording.
Universal Unique Identifier.
The unique identifier for the recording.
Response
The request has succeeded.
Example response
{
"api_version": "2010-04-01",
"channel": "1",
"channels": "1",
"date_created": "Tue, 25 Sep 2018 23:00:00 +0000",
"date_updated": "Wed, 26 Sep 2018 23:00:04 +0000",
"start_time": "Tue, 25 Sep 2018 23:00:00 +0000",
"end_time": "Wed, 26 Sep 2018 23:00:04 +0000",
"duration": 4,
"price": "-0.0025",
"price_unit": "USD",
"uri": "/api/laml/2010-04-01/Accounts/720796a0-8ee9-4350-83bd-2d07a3121f1e/Recordings/19e436af-5688-4307-b03b-bdb2b42b8142.json",
"subresource_uris": {
"transcriptions": "/api/laml/2010-04-01/Accounts/720796a0-8ee9-4350-83bd-2d07a3121f1e/Recordings/19e436af-5688-4307-b03b-bdb2b42b8142/Transcriptions.json"
},
"trim": "do-not-trim"
}Changes
- breaking
the
response's property type changed fromstringto no type, and format fromuuidto no format for status - breaking
the
response's property format changed fromuuidto no format for status - breaking
the
response's property format changed fromuuidto no format for status - breaking
the
response's property type changed fromstringto no type, and format fromuuidto no format for status - info
added to the
response propertyallOflist for the response status - info
added to the
response propertyallOflist for the response status - info
added to the
response propertyanyOflist for the response status - info
added to the
response propertyanyOflist for the response status - info
removed
subschema #1from theresponse propertyanyOflist for the response status - info
removed
subschema #1from theresponse propertyanyOflist for the response status
- breaking
- info
added 'unevaluatedProperties' constraint to the response body for the status
- info
added 'unevaluatedProperties' constraint to the response body for the status
- info
added 'unevaluatedProperties' constraint to the response body for the status
- info
added 'unevaluatedProperties' constraint to the response body for the status
- info
added 'unevaluatedProperties' constraint to the
////response property for the status
- info