curl --location 'https://api.myvocal.ai/sound_clone/api/v1/interpretation/assets/ia_.../playback' \
--header 'accessKey: <your_api_key>'
{
"code": 1,
"message": "success",
"data": {
"assetId": "ia_...",
"state": "READY",
"mimeType": "audio/mpeg",
"url": "https://<storage-host>/...",
"expiresAt": "2027-01-15T16:10:00",
"assetVersion": "1",
"rangeSupported": true,
"renewalAttemptLimit": 1,
"requestId": "..."
}
}
Interpretation
Play an interpretation asset
Get a temporary URL for a finished language version.
GET
/
sound_clone
/
api
/
v1
/
interpretation
/
assets
/
{assetId}
/
playback
curl --location 'https://api.myvocal.ai/sound_clone/api/v1/interpretation/assets/ia_.../playback' \
--header 'accessKey: <your_api_key>'
{
"code": 1,
"message": "success",
"data": {
"assetId": "ia_...",
"state": "READY",
"mimeType": "audio/mpeg",
"url": "https://<storage-host>/...",
"expiresAt": "2027-01-15T16:10:00",
"assetVersion": "1",
"rangeSupported": true,
"renewalAttemptLimit": 1,
"requestId": "..."
}
}
Returns a temporary product URL for an asset, such as a finished target language. Take the
assetId from targets[].outputAssetId in the project detail.
Header
string
required
API key for authentication.
Path
string
required
The asset identifier.
Response
string
The asset identifier.
string
The asset state.
string
The media type of the asset.
string
The temporary playback URL.
string
When the URL stops working.
string | null
The stored asset version, or
null when no storage version is recorded.boolean
Whether the URL supports range requests.
number
How many renewal attempts one failed request may use before the authorization error is surfaced. Currently
1: renew once, then report the error instead of retrying without bound.curl --location 'https://api.myvocal.ai/sound_clone/api/v1/interpretation/assets/ia_.../playback' \
--header 'accessKey: <your_api_key>'
{
"code": 1,
"message": "success",
"data": {
"assetId": "ia_...",
"state": "READY",
"mimeType": "audio/mpeg",
"url": "https://<storage-host>/...",
"expiresAt": "2027-01-15T16:10:00",
"assetVersion": "1",
"rangeSupported": true,
"renewalAttemptLimit": 1,
"requestId": "..."
}
}
The URL is temporary. Request it when you need to play the audio and request a new one after it expires rather than storing it.
Common errors
code = 47102: the asset does not exist or is not owned by your account. The API does not distinguish the two.code = 47127: object storage is unavailable — retry.
