Get Asset Metadata
curl --request GET \
--url https://mavi-backend.memories.ai/serve/api/v2/{asset_id}/metadata \
--header 'Authorization: <api-key>'import requests
url = "https://mavi-backend.memories.ai/serve/api/v2/{asset_id}/metadata"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://mavi-backend.memories.ai/serve/api/v2/{asset_id}/metadata', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://mavi-backend.memories.ai/serve/api/v2/{asset_id}/metadata",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://mavi-backend.memories.ai/serve/api/v2/{asset_id}/metadata"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://mavi-backend.memories.ai/serve/api/v2/{asset_id}/metadata")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://mavi-backend.memories.ai/serve/api/v2/{asset_id}/metadata")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"code": 200,
"msg": "success",
"data": {
"total": 1,
"resource": [
{
"extension": "mp4",
"asset_id": "re_660729180626595840",
"original_filename": "3",
"file_size": "133652816",
"upload_status": "SUCCESS",
"create_time": "1766989317192",
"modify_time": "1766989317192"
}
]
},
"success": true,
"failed": false
}
Asset Management
Get Asset Metadata
Retrieve metadata information for a specific asset
GET
/
{asset_id}
/
metadata
Get Asset Metadata
curl --request GET \
--url https://mavi-backend.memories.ai/serve/api/v2/{asset_id}/metadata \
--header 'Authorization: <api-key>'import requests
url = "https://mavi-backend.memories.ai/serve/api/v2/{asset_id}/metadata"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://mavi-backend.memories.ai/serve/api/v2/{asset_id}/metadata', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://mavi-backend.memories.ai/serve/api/v2/{asset_id}/metadata",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://mavi-backend.memories.ai/serve/api/v2/{asset_id}/metadata"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://mavi-backend.memories.ai/serve/api/v2/{asset_id}/metadata")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://mavi-backend.memories.ai/serve/api/v2/{asset_id}/metadata")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"code": 200,
"msg": "success",
"data": {
"total": 1,
"resource": [
{
"extension": "mp4",
"asset_id": "re_660729180626595840",
"original_filename": "3",
"file_size": "133652816",
"upload_status": "SUCCESS",
"create_time": "1766989317192",
"modify_time": "1766989317192"
}
]
},
"success": true,
"failed": false
}
Product: Visual Intelligence — Asset Management
Use case: Upload, manage, and download video/image assets used by other Visual Intelligence APIs
Host:
https://mavi-backend.memories.ai/serve/api/v2
Auth: Authorization: sk-mavi-... (no Bearer prefix)Code Examples
const BASE_URL = "https://mavi-backend.memories.ai/serve/api/v2";
const API_KEY = "sk-mavi-...";
const assetId = "re_657739295220518912";
const response = await fetch(`${BASE_URL}/${assetId}/metadata`, {
method: 'GET',
headers: {
'Authorization': API_KEY
}
});
const data = await response.json();
console.log(data);
import axios from 'axios';
const BASE_URL = "https://mavi-backend.memories.ai/serve/api/v2";
const API_KEY = "sk-mavi-...";
const assetId = "re_657739295220518912";
const response = await axios.get(`${BASE_URL}/${assetId}/metadata`, {
headers: {
'Authorization': API_KEY
}
});
console.log(response.data);
import requests
BASE_URL = "https://mavi-backend.memories.ai/serve/api/v2"
API_KEY = "sk-mavi-..."
HEADERS = {
"Authorization": f"{API_KEY}"
}
def get_metadata(asset_id):
url = f"{BASE_URL}/{asset_id}/metadata"
response = requests.get(url, headers=HEADERS)
return response.json()
# Usage example
metadata = get_metadata("re_657739295220518912")
print(metadata)
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| asset_id | string | Yes | The unique identifier of the asset (e.g., “re_660729180626595840”) |
Response
Returns comprehensive metadata about the asset.{
"code": 200,
"msg": "success",
"data": {
"total": 1,
"resource": [
{
"extension": "mp4",
"asset_id": "re_660729180626595840",
"original_filename": "3",
"file_size": "133652816",
"upload_status": "SUCCESS",
"create_time": "1766989317192",
"modify_time": "1766989317192"
}
]
},
"success": true,
"failed": false
}
Response Parameters
| Parameter | Type | Description |
|---|---|---|
| code | string | Response code indicating the result status |
| msg | string | Response message describing the operation result |
| data | object | Response data object containing asset metadata information |
| data.total | integer | Total number of assets returned |
| data.resource | array | Array of asset metadata objects |
| data.resource[].extension | string | File extension of the asset (e.g., “mp4”, “jpg”) |
| data.resource[].asset_id | string | Unique identifier of the asset |
| data.resource[].original_filename | string | Original filename of the uploaded file |
| data.resource[].file_size | string | Size of the file in bytes (as string) |
| data.resource[].upload_status | string | Status of the upload operation (e.g., “SUCCESS”) |
| data.resource[].create_time | string | Timestamp when the asset was created (Unix timestamp in milliseconds) |
| data.resource[].modify_time | string | Timestamp when the asset was last modified (Unix timestamp in milliseconds) |
| success | boolean | Indicates whether the operation was successful |
| failed | boolean | Indicates whether the operation failed |
Notes
- Returns file properties including extension, file size, upload status, and timestamps
- Use
upload_statusto verify the asset is ready for processing before calling other endpoints
Authorizations
Path Parameters
The unique identifier of the asset
Response
200 - application/json
Metadata retrieved successfully
Response code indicating the result status
Example:
200
Response message describing the operation result
Example:
"success"
Response data object containing asset metadata information
Show child attributes
Show child attributes
Indicates whether the operation was successful
Example:
true
Indicates whether the operation failed
Example:
false
