Skip to main content
GET
/
serve
/
api
/
v1
/
get_audio_transcription
Get Audio Transcription
curl --request GET \
  --url https://api.memories.ai/serve/api/v1/get_audio_transcription \
  --header 'Authorization: <api-key>'
{
  "code": "0000",
  "msg": "success",
  "data": {},
  "success": true,
  "failed": false
}

Documentation Index

Fetch the complete documentation index at: https://api-tools.memories.ai/llms.txt

Use this file to discover all available pages before exploring further.

Product: Visual Search Use case: Upload videos and images, auto-index them, then search by natural language, image, or transcript phrase Host: https://api.memories.ai/serve/api/v1 Auth: Authorization: sk-mavi-... (no Bearer prefix)
Retrieve the audio transcription (speech-to-text) of a video’s audio track. Each segment carries a time range and the transcribed text. For the visual scene descriptions, use Get Video Caption.

Prerequisites

  • You have created a memories.ai API key.
  • The video has been uploaded via the Upload API and finished parsing.
  • The source video has an audio track. Videos without audio return data: null even when the request succeeds.

Endpoint

GET /serve/api/v1/get_audio_transcription

Request Example

import requests

url = "https://api.memories.ai/serve/api/v1/get_audio_transcription"
headers = {"Authorization": "sk-mavi-..."}
params = {
    "video_no": "VI605961375402668032",
    "unique_id": "default",
}
response = requests.get(url, headers=headers, params=params)
print(response.json())

Query Parameters

video_no
string
required
The video identifier returned by the upload API.
unique_id
string
default:"default"
Namespace scoping the lookup to the account folder the video was uploaded under.

Response Example

Audio track present:
{
  "code": "0000",
  "msg": "success",
  "data": {
    "videoNo": "VI605961375402668032",
    "transcriptions": [
      {
        "index": 0,
        "content": " I'm going to get my emergency and report.",
        "startTime": "0",
        "endTime": "7"
      },
      {
        "index": 1,
        "content": " Mommy, you're going to go.",
        "startTime": "7",
        "endTime": "12"
      }
    ],
    "createTime": "1758276264066",
    "video_bucket": "mavi-resource",
    "video_blob": "VI605961375402668032.mp4"
  },
  "success": true,
  "failed": false
}
No audio track (or transcription not yet ready):
{
  "code": "0000",
  "msg": "success",
  "data": null,
  "success": true,
  "failed": false
}

Response Fields

code
string
Business status code. 0000 indicates success — including the “no audio track” case below.
msg
string
Human-readable status message.
data
object | null
The transcription record, or null if the video has no audio track / no transcription has been produced. Check data is None explicitly rather than relying on the status code.
data.videoNo
string
Echo of the requested video identifier.
data.transcriptions
array
Ordered list of transcription segments covering the audio track.
data.transcriptions[].index
integer
Zero-based index of the segment.
data.transcriptions[].content
string
Transcribed text for this segment (often with a leading space).
data.transcriptions[].startTime
string
Segment start time in seconds, returned as a string.
data.transcriptions[].endTime
string
Segment end time in seconds, returned as a string.
data.createTime
string
Upload-time timestamp of the underlying video, in milliseconds since epoch, returned as a string.
data.video_bucket
string
GCS bucket of the underlying video file. Omitted when the storage location cannot be resolved.
data.video_blob
string
GCS blob (object) path of the underlying video. Use it with video_bucket at GET /serve/api/v2/download?bucket=&blob= to fetch the file directly.
success
boolean
true when code == "0000" — true even on the “no audio track” path.
failed
boolean
Inverse of success.

Notes & Limits

  • No-audio case is not an error: Videos without an audio track return code: "0000", success: true, data: null. Check for data explicitly.
  • Numeric strings: startTime, endTime, and createTime are strings — cast with int(...) before arithmetic.
  • Rate limiting: Subject to the standard Visual Search rate limits. See Rate limits.

Authorizations

Authorization
string
header
required

Query Parameters

video_no
string
required

The unique video ID returned by the upload API.

unique_id
string
default:default

Unique ID scope.

Response

200 - application/json

Successful response

code
Example:

"0000"

msg
string
Example:

"success"

data
success
boolean
Example:

true

failed
boolean
Example:

false