Skip to content

Data Exploration Related APIs

Raw data volume

Create original data volumes

POST /CreateOriginVolume

Input parameters:

Parameters Required Meaning
name Yes Original data volume name

Example:

url = "https://freetier-01.cn-hangzhou.cluster.cn-dev.matrixone.tech/CreateOriginVolume"

headers = {
    "user-id":"0194dfaa-3eda-7ea5-b47c-b4f4f5940e97",
    "Access-Token": "",
    "uid": "2de56399-0fda-4982-a26e-580fd666914d-0194dfaa-3eda-7ea5-b47c-b4f4f5940e97:admin:accountadmin"
}

body = {
    "name": "b_vol3"

}
response = requests.post(url, json=body, headers=headers)
# Check the response status
print(response.json()) # Print the returned JSON data

return:

{'code': 'OK', 'msg': 'OK'}

View original data volume list

POST /DescribeOriginVolumes

Output parameters:

Parameters Meaning
id volume id
name volume name
size volume size
file_num Number of files

Example:

import requests
import json

url = "https://freetier-01.cn-hangzhou.cluster.cn-dev.matrixone.tech/DescribeOriginVolumes"
headers = {
    "user-id":"0194dfaa-3eda-7ea5-b47c-b4f4f5940e97",
    "Access-Token": "xxxx",
    "uid": "ac8fd715-b39c-4edb-837b-e1ea1dae5f80-0194dfaa-3eda-7ea5-b47c-b4f4f5940e97:admin:accountadmin"
}

response = requests.post(url, headers=headers)
print("Response Body:", json.dumps(response.json(), indent=4, ensure_ascii=False))

return:

Response Body: {
    "code": "OK",
    "msg": "OK",
    "data": {
        "total": 5,
        "volumes": [
            {
                "id": "1889223879880048640",
                "name": "b-vol1",
                "size": 6787457,
                "file_num": 1,
                "owner": "admin",
                "created_at": 1739261047,
                "updated_at": 1739261047
            },
            {
                "id": "1889578498228068352",
                "name": "b-vol2",
                "size": 40724742,
                "file_num": 6,
                "owner": "admin",
                "created_at": 1739345595,
                "updated_at": 1739345595
            },
            {
                "id": "1889868565396619264",
                "name": "b_vol3",
                "size": 0,
                "file_num": 0,
                "owner": "admin",
                "created_at": 1739414752,
                "updated_at": 1739414752
            },
            {
                "id": "1889881472272465920",
                "name": "b_vol6",
                "size": 0,
                "file_num": 0,
                "owner": "admin",
                "created_at": 1739417829,
                "updated_at": 1739417829
            }
        ]
    }
}

View a raw data volume (file list)

POST /DescribeOriginVolume

Output parameters:

Parameters Meaning
id file id
name file name
type File type
status File parsing status
path file path

Example:

import requests
import json

url = "https://freetier-01.cn-hangzhou.cluster.cn-dev.matrixone.tech/DescribeOriginVolume"
headers = {
    "user-id":"0194dfaa-3eda-7ea5-b47c-b4f4f5940e97",
    "Access-Token": "xxxx",
    "uid": "badb5c26-e335-453d-85ad-7e996bcebff4-0194dfaa-3eda-7ea5-b47c-b4f4f5940e97:admin:accountadmin",
}

body={
        "id": "1889223879880048640"
}

response = requests.post(url, headers=headers,json=body)
print("Response Body:", json.dumps(response.json(), indent=4, ensure_ascii=False))

return:

Response Body: {
    "code": "OK",
    "msg": "OK",
    "data": {
        "total": 1,
        "items": [
            {
                "id": "1889223944229060608",
                "name": "Dream of the Red Chamber (Public Book) Simplified Chinese horizontal row.pdf",
                "type": 2,
                "status": 5,
                "size": 6787457,
                "update_time": 1739261640,
                "other_metadata": "",
                "reason": "",
                "user": "admin",
                "start_time": 1739261063,
                "end_time": 1739261640,
                "path": "/b-vol1/Dream of the Red Chamber (Public Book) Simplified Chinese horizontal row.pdf"
            }
        ]
    }
}

Download the file in a raw data volume

POST /GetOriginVolumeFileLink

Input parameters:

Parameters Required Meaning
volume_id Yes Raw data volume id
file_id Yes File id

Example:

import requests
import json

url = "https://freetier-01.cn-hangzhou.cluster.cn-dev.matrixone.tech/GetOriginVolumeFileLink"
headers = {
    "user-id":"0194dfaa-3eda-7ea5-b47c-b4f4f5940e97",
    "Access-Token": "xxxx",
    "uid": "ac8fd715-b39c-4edb-837b-e1ea1dae5f80-0194dfaa-3eda-7ea5-b47c-b4f4f5940e97:admin:accountadmin"
}

body = {
    "volume_id": 1889223879880048640,
    "file_id": "1889578498228068352"

}response = requests.post(url, headers=headers,json=body)
print("Response Body:", json.dumps(response.json(), indent=4, ensure_ascii=False))

return:

Response Body: {
    "code": "OK",
    "msg": "OK",
    "data": {
        "link": "https://moi-dev-test.oss-cn-hangzhou.aliyuncs.com/connector_path%2F0194dfaa-3eda-7ea5-b47c-b4f4f594xxxx%2Fb-vol2?Expires=173944xxxx&OSSAccessKeyId=LTAI5t6RX4TpSC8Z2v4nGG4Y&Signature=bCy60Or%2B%2Fr8Na1OcfMn%2Fy2jso6Y%3D"
    }
}

Delete a file in a raw data volume

POST /DeleteOriginVolumeFiles

Input parameters:

Parameters Required Meaning
volume_id Yes Raw data volume id
file_ids Yes File id

Example:

import requests
import json

url = "https://freetier-01.cn-hangzhou.cluster.cn-dev.matrixone.tech/DeleteOriginVolumeFiles"

headers = {
    "user-id":"0194dfaa-3eda-7ea5-b47c-b4f4f5940e97",
    "Access-Token": "xxxx",
    "uid": "badb5c26-e335-453d-85ad-7e996bcebff4-0194dfaa-3eda-7ea5-b47c-b4f4f5940e97:admin:accountadmin",
}


body={
    "volume_id": "1889578498228068352",
    "file_ids": ["1889698920437940224"]
}


response = requests.post(url, headers=headers,json=body)

if response.status_code == 200:
    print(response.json())
else:
    print(f"Request failed, status code: {response.status_code}, error message: {response.text}")

return:

{'code': 'OK', 'msg': 'OK', 'data': {}}

Processing data volumes

Create processing data volumes

POST /byoa/api/v1/explore/volumes

Input parameters:

Parameters Required Meaning
name Yes Processing data volume name

Example:

import requests
import json

url = "https://freetier-01.cn-hangzhou.cluster.cn-dev.matrixone.tech/byoa/api/v1/explore/volumes"

headers = {
    "user-id":"0194dfaa-3eda-7ea5-b47c-b4f4f5940e97",
    "Access-Token": "xxxx",
    "uid": "ac8fd715-b39c-4edb-837b-e1ea1dae5f80-0194dfaa-3eda-7ea5-b47c-b4f4f5940e97:admin:accountadmin"
}

body = {
    "name": "a_vol4"

}
response = requests.post(url, json=body, headers=headers)
print(response.json())

return:

{'code': 'ok', 'msg': 'ok', 'data': {'id': 'fb93a6c1-6d1e-4d68-bb7c-4d84facda670', 'name': 'a_vol4', 'created_at': '2025-02-13T11:44:36', 'updated_at': '2025-02-13T11:44:36'}}

View the list of processed data volumes

GET /byoa/api/v1/explore/volumes

Output parameters:

Parameters Meaning
name volume name
id volume id

Example:

import requests
import json

url = "https://freetier-01.cn-hangzhou.cluster.cn-dev.matrixone.tech/byoa/api/v1/explore/volumes"
headers = {
    "user-id":"0194dfaa-3eda-7ea5-b47c-b4f4f5940e97",
    "Access-Token": "xxxx",
    "uid": "badb5c26-e335-453d-85ad-7e996bcebff4-0194dfaa-3eda-7ea5-b47c-b4f4f5940e97:admin:accountadmin",
}

response = requests.get(url, headers=headers)
print("Response Body:", json.dumps(response.json(), indent=4, ensure_ascii=False))

return:

Response Body: {
    "code": "ok",
    "msg": "ok",
    "data": {
        "total": 4,
        "volumes": [
            {
                "name": "a-vol1",
                "created_at": "2025-02-11T16:06:55",
                "updated_at": "2025-02-11T16:06:55",
                "user_id": "0194dfaa-3eda-7ea5-b47c-b4f4f5940e97",
                "id": "eb42f0a1-ab18-4010-b95c-cd1716dd5e95"
            },
            {
                "name": "a_vol4",
                "created_at": "2025-02-13T11:44:36",
                "updated_at": "2025-02-13T11:44:36",
                "user_id": "0194dfaa-3eda-7ea5-b47c-b4f4f5940e97",
                "id": "fb93a6c1-6d1e-4d68-bb7c-4d84facda670"
            }
        ]
    }
}

View a processing data volume (file list)

POST /byoa/api/v1/explore/volumes/{volume_id}/files
import requests
import json

url = "https://freetier-01.cn-hangzhou.cluster.cn-dev.matrixone.tech/byoa/api/v1/explore/volumes/dbcc0d71-31f9-4799-b404-096f9e8e57f9/files"
headers = {
    "user-id":"0194dfaa-3eda-7ea5-b47c-b4f4f594xxxx",
    "Access-Token": "xxxx",
    "uid": "2868847d-660d-4ace-a7ca-b75c3be575ce-0194dfaa-3eda-7ea5-b47c-b4f4f594xxxx:admin:accountadmin",
}

response = requests.post(url, headers=headers)
print("Response Body:", json.dumps(response.json(), indent=4, ensure_ascii=False))

return:

Response Body: {
    "code": "ok",
    "msg": "ok",
    "data": {
        "total": 3,
        "items": [
            {
                "id": "0194fb44-c44b-7713-b064-bff178ba30c3",
                "created_at": "2025-02-12T17:46:16.000000+0000",
                "updated_at": "2025-02-12T17:51:21.000000+0000",
                "user_id": "0194dfaa-3eda-7ea5-b47c-b4f4f5940e97",
                "source_volume_id": "1889223879880048640",
                "source_file_id": "1889223944229060608","target_volume_id": "dbcc0d71-31f9-4799-b404-096f9e8e57f9",
                "file_name": "Dream of the Red Chamber (Public Book) Simplified Chinese horizontal row.pdf",
                "file_type": 2,
                "file_size": 6787457,
                "file_path": "0194dfaa-3eda-7ea5-b47c-b4f4f5940e97/b-vol1/1889223922712281088/Dream of the Red Chamber (Public Book) Simplified Chinese horizontal row.pdf",
                "file_status": 2,
                "workflow_id": "5775ecd6-5918-42a1-a92f-7245fe96b2bf",
                "job_id": "0194fb44-c44b-7708-aab6-c67e094d0352",
                "error_message": "",
                "duration": 300,
                "start_time": "2025-02-12T17:46:20.000000+0000",
                "end_time": "2025-02-12T17:51:21.000000+0000"
            },
            {
                "id": "0194fb23-cd65-7688-9f0e-b24de1947f9c",
                "created_at": "2025-02-12T17:10:15.000000+0000",
                "updated_at": "2025-02-12T17:15:21.000000+0000",
                "user_id": "0194dfaa-3eda-7ea5-b47c-b4f4f5940e97",
                "source_volume_id": "1889223879880048640",
                "source_file_id": "1889223944229060608",
                "target_volume_id": "dbcc0d71-31f9-4799-b404-096f9e8e57f9",
                "file_name": "Dream of the Red Chamber (Public Book) Simplified Chinese horizontal row.pdf",
                "file_type": 2,
                "file_size": 6787457,
                "file_path": "0194dfaa-3eda-7ea5-b47c-b4f4f5940e97/b-vol1/1889223922712281088/Dream of the Red Chamber (Public Book) Simplified Chinese horizontal row.pdf",
                "file_status": 2,
                "workflow_id": "729e7a03-652d-46e0-bdad-b05ec5b80cea",
                "job_id": "0194fb23-cd65-767c-b58f-db7c4456b896",
                "error_message": "",
                "duration": 300,
                "start_time": "2025-02-12T17:10:20.000000+0000",
                "end_time": "2025-02-12T17:15:21.000000+0000"
            },
            {
                "id": "0194fb28-61ae-7ab3-8446-a50669b8df87",
                "created_at": "2025-02-12T17:15:15.000000+0000",
                "updated_at": "2025-02-12T17:20:21.000000+0000",
                "user_id": "0194dfaa-3eda-7ea5-b47c-b4f4f5940e97",
                "source_volume_id": "1889223879880048640",
                "source_file_id": "1889223944229060608",
                "target_volume_id": "dbcc0d71-31f9-4799-b404-096f9e8e57f9",
                "file_name": "Dream of the Red Chamber (Public Book) Simplified Chinese horizontal row.pdf",
                "file_type": 2,
                "file_size": 6787457,
                "file_path": "0194dfaa-3eda-7ea5-b47c-b4f4f5940e97/b-vol1/1889223922712281088/Dream of the Red Chamber (Public Book) Simplified Chinese horizontal row.pdf",
                "file_status": 2,
                "workflow_id": "c6dcbad5-f85d-42b7-942c-2e8d3445a4e6",
                "job_id": "0194fb28-61ae-7aac-8500-a4c924a68211",
                "error_message": "",
                "duration": 300,
                "start_time": "2025-02-12T17:15:20.000000+0000",
                "end_time": "2025-02-12T17:20:21.000000+0000"
            }
        ]
    }
}

Download a file in a processing data volume

GET /byoa/api/v1/explore/volumes/{volume_id}/files/{file_id}/raws
import requests
import json

url = "https://freetier-01.cn-hangzhou.cluster.cn-dev.matrixone.tech/byoa/api/v1/explore/volumes/eb42f0a1-ab18-4010-b95c-cd1716dd5e95/files/0194f41d-59d3-78ae-953d-7db134c83cab/raws"
headers = {
    "user-id":"0194dfaa-3eda-7ea5-b47c-b4f4f594xxxx",
    "Access-Token": "xxxx",
    "uid": "a8b83860-da1a-46cb-96a7-dd668fadc163-0194dfaa-3eda-7ea5-b47c-b4f4f594xxxx:admin:accountadmin"
}

response = requests.get(url, headers=headers)
print("Response Body:", json.dumps(response.json(), indent=4, ensure_ascii=False))

return:

Response Body: {
    "total": 0,
    "items": []
}

View the parsing content of a file in a processing data volume

POST /byoa/api/v1/explore/volumes/{volume_id}/files/{filed_id}/blocks

Example:

import requests
import json

url = "https://freetier-01.cn-hangzhou.cluster.cn-dev.matrixone.tech/byoa/api/v1/explore/volumes/7399732a-3e43-4469-8abb-7a53b99efc22/files/0194fd65-e671-7e67-ba34-66967ba0fbf0/blocks"
headers = {
    "user-id":"0194e0c2-7e81-7040-ba44-f1d4f51axxxx",
    "Access-Token": "xxxx",
    "uid": "0401ffeb-592c-4472-bed4-fb4631c72688-0194e0c2-7e81-7040-ba44-f1d4f51axxxx:admin:accountadmin"
}

body = {
    "limit": 2
}

response = requests.post(url, headers=headers,json=body)
print("Response Body:", json.dumps(response.json(), indent=4, ensure_ascii=False))

return:

Response Body: {
    "code": "ok",
    "msg": "ok",
    "data": {
        "total": 318,
        "items": [
            {
                "id": "000a9605-733f-4335-bc72-ac9aa8351e66","content": "1. Data access and integration a. Matrix Search connects product images and inventory data from the backend management system, and realizes data synchronization and real-time update through automatic updates and API interfaces. b. Image data is managed uniformly according to single-sided type, without model words to ensure the clear and accurate search results. 2. Search index construction and optimization a. Matrix Search uses the Efficient Net model to extract features of uploaded images, generate high-precision image embedding vectors, and build image search indexes. b. Supports mixed search, and improves search accuracy and relevance of results by combining semantic search (search pictures with text) and vector search (search pictures with pictures). 3. Implementation of intelligent search functions a. Users upload pictures or enter text through the applet portal for product search. b. System call Matrix Search The search API quickly returns matching product results, and supports category filtering and series of queries to help users quickly find target products. 4. Inventory query and display a. After the search results are filtered and classified, the applet displays matching product information, including name, specification, picture, inventory, etc. b. Users can directly query product inventory status and further view other products in the same series to optimize the search experience. # Customer income  Through the intelligent search platform based on Matrix Search, Jinyitao has achieved significant improvements in product search and customer experience: search efficiency is improved by $90\\%$, and sales can quickly find tiled products that meet the needs. $\\bullet$ The systematic inventory query function helps the sales team optimize inventory management and reduce manual operation time. $\\bullet$ The intelligent search function based on image features has significantly improved user satisfaction with product selection and enhanced brand stickiness. $\\bullet$ The flexible mini-program portal simplifies the user interaction process and provides customers with efficient services anytime, anywhere. #Suwen TechAgent #Customer Background",
                "content_type": "text",
                "file_id": "0194fd65-e671-7e67-ba34-66967ba0fbf0",
                "created_at": "2025-02-13T03:45:02",
                "updated_at": "2025-02-13T03:45:02"
            },
            {
                "id": "08aaf135-f8ad-446c-9951-03e94777f608",
                "content": "![](/aaf889600825973f8e7e118d8b5e0c805d774aac8e2d96c2f005e0b9ee77bbad.jpg) Next, we will analyze the scenarios of each key link, the technical requirements of data processing, and how the product capabilities in the MatrixOne Intelligence solution match the needs of this link. # Data Access and Integration # Section Overview The previous article has described in detail that when corporate customers are facing GenAI application scenarios, corporate customers generally face a new round of data silos. Various data sources may be distributed in different databases (such as relational databases, NoSQL databases), file systems (local or cloud storage), third-party SaaS applications (such as network disks, IM In environments such as tools) and edge devices. These data are not only physically scattered, but also highly heterogeneous in formats, covering structured data (such as database tables), semi-structured data (such as JSON, XML) and unstructured data (such as PDF documents, images, videos, audio, etc.). This dispersed and diverse data form brings the following key problems and needs: 1. Complex data acquisition and integration: data is distributed in multiple systems and locations, and lacks a unified access and management method, resulting in large and inefficient data integration. 2. Unstructured data processing pressure: The unstructured data volume is huge (such as videos and audio files), and the use of a centralized access method will bring bandwidth bottlenecks, high latency and high cost problems. 3. Multimodal data standardization: the data format is inconsistent, the parsing and standardization process is cumbersome, making it difficult to directly support AI modeling and applications. 4. Security and permission management: Data access across departments or across systems requires refined permission control to ensure the security and compliance of data during the access and management process. Therefore, the core goal of this link is to solve the problem of data dispersion and heterogeneity, and build an architecture that supports unified access to multiple data sources, cloud-edge collaborative processing and distributed management. By efficiently integrating structured, semi-structured and unstructured data, and providing flexible permission control and standardized processing capabilities, a solid data foundation is laid for subsequent AI modeling and intelligent applications. ",
                "content_type": "text",
                "file_id": "0194fd65-e671-7e67-ba34-66967ba0fbf0",
                "created_at": "2025-02-13T03:45:02",
                "updated_at": "2025-02-13T03:45:02"
            }
        ]
    }
}

Delete segments of a file in a processing data volume

DELETE /explore/volumes/{volume_id}/files/{filed_id}/blocks

NOTE: The status code for successful request of this interface is 204.

Output parameters:

Parameters Meaning
ids block's id

Example:

import requests
import json

url = "https://freetier-01.cn-hangzhou.cluster.cn-dev.matrixone.tech/byoa/api/v1/explore/volumes/7399732a-3e43-4469-8abb-7a53b99efc22/files/0194fd65-e671-7e67-ba34-66967ba0fbf0/blocks"
headers = {
    "user-id": "0194e0c2-7e81-7040-ba44-f1d4f51axxxx",
    "Access-Token": "xxxx",
    "uid": "8fe335b4-2883-41b4-82eb-a17362504243-0194e0c2-7e81-7040-ba44-f1d4f51axxxx:admin:accountadmin",
}

body = {
    "ids": ["03e927d3-edbe-426c-835a-0f1e4fcc39b6"]
}

response = requests.delete(url, headers=headers, json=body)

if response.status_code == 204:
    print("Request succeeded, resource deleted")
else:
    print(f"Request failed, status code: {response.status_code}, error message: {response.text}")

return:

Request successful, resource deleted