创建连接器¶
在当前工作区保存一个外部数据源连接器。创建只保存连接信息,不会开始导入或导出数据。接口会检查连接信息;检查未通过时,连接器仍会保存,但状态为 failed。
POST https://api.moi.matrixorigin.cn/v5/connectors
调用前准备¶
请求体¶
将 $AI_STUDIO_API_KEY、$WORKSPACE_ID 和示例中的连接信息替换为实际值。
curl -X POST "https://api.moi.matrixorigin.cn/v5/connectors" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"name": "s3-orders-import",
"source_type": 5,
"usage_type": [1],
"config": {
"s3": {
"endpoint": "https://s3.example.com",
"access_key_id": "$S3_ACCESS_KEY_ID",
"access_key_secret": "$S3_ACCESS_KEY_SECRET",
"bucket_name": "orders/import",
"region": "us-east-1",
"path_style": false
}
}
}'
curl -X POST "https://api.moi.matrixorigin.cn/v5/connectors" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"name": "oss-orders-import",
"source_type": 4,
"usage_type": [1],
"config": {
"oss": {
"endpoint": "https://oss-cn-hangzhou.aliyuncs.com",
"access_key_id": "$OSS_ACCESS_KEY_ID",
"access_key_secret": "$OSS_ACCESS_KEY_SECRET",
"bucket_name": "orders/import"
}
}
}'
curl -X POST "https://api.moi.matrixorigin.cn/v5/connectors" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"name": "matrixone-analytics",
"source_type": 3,
"usage_type": [1],
"config": {
"mo": {
"host": "mo.example.com",
"port": 6001,
"username": "admin",
"password": "$MO_PASSWORD",
"database": "analytics"
}
}
}'
curl -X POST "https://api.moi.matrixorigin.cn/v5/connectors" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"name": "hdfs-orders-import",
"source_type": 7,
"usage_type": [1],
"config": {
"hdfs": {
"address": "hdfs://namenode.example.com:8020",
"auth_type": 0,
"username": "hdfs",
"file_path": "/data/orders"
}
}
}'
curl -X POST "https://api.moi.matrixorigin.cn/v5/connectors" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"name": "hdfs-kerberos-orders-import",
"source_type": 7,
"usage_type": [1],
"config": {
"hdfs": {
"address": "hdfs://namenode.example.com:8020",
"auth_type": 1,
"kerberos_principal": "hdfs-client@EXAMPLE.COM",
"keytab_content": "$HDFS_KEYTAB_BASE64",
"krb5_conf_content": "$HDFS_KRB5_CONF_BASE64",
"proxy_user": "hdfs",
"file_path": "/data/orders"
}
}
}'
curl -X POST "https://api.moi.matrixorigin.cn/v5/connectors" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"name": "hive-orders-import",
"source_type": 8,
"usage_type": [1],
"config": {
"hive": {
"addresses": ["hive-1.example.com:10000"],
"auth_type": 0,
"username": "hive_user",
"password": "$HIVE_PASSWORD"
}
}
}'
curl -X POST "https://api.moi.matrixorigin.cn/v5/connectors" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"name": "hive-kerberos-orders-import",
"source_type": 8,
"usage_type": [1],
"config": {
"hive": {
"addresses": ["hive-1.example.com:10000"],
"auth_type": 1,
"client_principal": "hive-client@EXAMPLE.COM",
"service_principal": "hive/hive-1.example.com@EXAMPLE.COM",
"keytab_data": "$HIVE_KEYTAB_BASE64",
"krb5_conf_data": "$HIVE_KRB5_CONF_BASE64"
}
}
}'
curl -X POST "https://api.moi.matrixorigin.cn/v5/connectors" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"name": "mysql-orders-import",
"source_type": 9,
"usage_type": [1],
"config": {
"mysql": {
"host": "mysql.example.com",
"port": 3306,
"username": "reader",
"password": "$MYSQL_PASSWORD",
"database": "orders"
}
}
}'
curl -X POST "https://api.moi.matrixorigin.cn/v5/connectors" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"name": "sqlserver-orders-import",
"source_type": 10,
"usage_type": [1],
"config": {
"sqlserver": {
"host": "sqlserver.example.com",
"port": 1433,
"username": "reader",
"password": "$SQLSERVER_PASSWORD",
"database": "orders"
}
}
}'
curl -X POST "https://api.moi.matrixorigin.cn/v5/connectors" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"name": "oracle-orders-import",
"source_type": 11,
"usage_type": [1],
"config": {
"oracle": {
"host": "oracle.example.com",
"port": 1521,
"username": "reader",
"password": "$ORACLE_PASSWORD",
"service_name": "ORCLPDB1"
}
}
}'
curl -X POST "https://api.moi.matrixorigin.cn/v5/connectors" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"name": "postgresql-orders-import",
"source_type": 12,
"usage_type": [1],
"config": {
"postgresql": {
"host": "postgresql.example.com",
"port": 5432,
"username": "reader",
"password": "$POSTGRESQL_PASSWORD",
"database": "orders"
}
}
}'
curl -X POST "https://api.moi.matrixorigin.cn/v5/connectors" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"name": "mongodb-orders-import",
"source_type": 13,
"usage_type": [1],
"config": {
"mongodb": {
"host": "mongodb.example.com",
"port": 27017,
"authMode": "userpass",
"user": "reader",
"password": "$MONGODB_PASSWORD",
"authSource": "admin",
"readPreference": "primary",
"readConcern": "majority"
}
}
}'
curl -X POST "https://api.moi.matrixorigin.cn/v5/connectors" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"name": "langfuse-import",
"source_type": 14,
"usage_type": [1],
"config": {
"langfuse": {
"host": "https://cloud.langfuse.com",
"public_key": "$LANGFUSE_PUBLIC_KEY",
"secret_key": "$LANGFUSE_SECRET_KEY",
"pull_mode": "langfuse_v1"
}
}
}'
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
连接器名称。去除首尾空白后不能为空;不能包含半角空格、 |
|
integer |
是 |
数据源类型代码。标准 S3 填写 |
|
integer 或 array of integer |
是 |
连接器用途。 |
|
object |
是 |
连接信息。只填写一组与 |
|
string |
否 |
S3 服务地址。未填写时使用 S3 服务的默认地址。 |
|
string |
是 |
访问密钥 ID。 |
|
string |
是 |
访问密钥。 |
|
string |
是 |
存储桶名称;可写为桶名/前缀,例如 |
|
string |
否 |
存储桶所在区域。 |
|
string |
否 |
使用临时凭据时填写的会话令牌。 |
|
boolean |
否 |
填 |
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
连接器名称。去除首尾空白后不能为空;不能包含半角空格、 |
|
integer |
是 |
数据源类型代码。阿里云 OSS 填写 |
|
integer 或 array of integer |
是 |
连接器用途。 |
|
object |
是 |
连接信息。只填写一组与 |
|
string |
是 |
OSS 服务地址。 |
|
string |
是 |
AccessKey ID。 |
|
string |
是 |
AccessKey Secret。 |
|
string |
是 |
存储桶名称;可写为桶名/前缀,例如 |
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
连接器名称。去除首尾空白后不能为空;不能包含半角空格、 |
|
integer |
是 |
数据源类型代码。MatrixOne 填写 |
|
integer 或 array of integer |
是 |
连接器用途。 |
|
object |
是 |
连接信息。只填写一组与 |
|
string |
是 |
MatrixOne 服务地址。 |
|
integer |
是 |
MatrixOne 服务端口。 |
|
string |
是 |
登录用户名。 |
|
string |
是 |
登录密码。 |
|
string |
否 |
默认数据库名称。 |
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
连接器名称。去除首尾空白后不能为空;不能包含半角空格、 |
|
integer |
是 |
数据源类型代码。HDFS 填写 |
|
integer 或 array of integer |
是 |
连接器用途。 |
|
object |
是 |
连接信息。只填写一组与 |
|
string |
是 |
NameNode 地址,可带 |
|
integer |
是 |
认证类型: |
|
string |
Simple 时必填 |
Simple 认证使用的 HDFS 用户名。 |
|
string |
是 |
连接器可访问的 HDFS 基础目录,例如 |
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
连接器名称。去除首尾空白后不能为空;不能包含半角空格、 |
|
integer |
是 |
数据源类型代码。HDFS 填写 |
|
integer 或 array of integer |
是 |
连接器用途。 |
|
object |
是 |
连接信息。只填写一组与 |
|
string |
是 |
NameNode 地址,可带 |
|
integer |
是 |
填 |
|
string |
是 |
用于登录的用户主体。 |
|
string(Base64 编码) |
条件必填 |
Kerberos 认证时,未提供 |
|
string(Base64 编码) |
条件必填 |
Kerberos 认证时,未提供 |
|
string |
否 |
登录后使用的代理用户。 |
|
string |
是 |
连接器可访问的 HDFS 基础目录。 |
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
连接器名称。去除首尾空白后不能为空;不能包含半角空格、 |
|
integer |
是 |
数据源类型代码。Hive 填写 |
|
integer 或 array of integer |
是 |
连接器用途。 |
|
object |
是 |
连接信息。只填写一组与 |
|
array of string |
是 |
HiveServer2 地址列表。至少填写一个 |
|
integer |
是 |
认证类型: |
|
string |
LDAP 时必填 |
LDAP 用户名。 |
|
string |
LDAP 时必填 |
LDAP 密码。 |
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
连接器名称。去除首尾空白后不能为空;不能包含半角空格、 |
|
integer |
是 |
数据源类型代码。Hive 填写 |
|
integer 或 array of integer |
是 |
连接器用途。 |
|
object |
是 |
连接信息。只填写一组与 |
|
array of string |
是 |
HiveServer2 地址列表,至少填写一个 |
|
integer |
是 |
填 |
|
string |
是 |
用于登录的用户主体。 |
|
string |
是 |
HiveServer2 服务主体。 |
|
string |
是 |
Keytab 内容。 |
|
string |
是 |
|
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
连接器名称。去除首尾空白后不能为空;不能包含半角空格、 |
|
integer |
是 |
数据源类型代码。MySQL 填写 |
|
integer 或 array of integer |
是 |
连接器用途。 |
|
object |
是 |
连接信息。只填写一组与 |
|
string |
是 |
MySQL 数据库主机地址。 |
|
integer |
是 |
MySQL 数据库端口。 |
|
string |
是 |
登录用户名。 |
|
string |
是 |
登录密码。 |
|
string |
是 |
要连接的数据库名称。连接器创建后仅浏览和导入该数据库。 |
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
连接器名称。去除首尾空白后不能为空;不能包含半角空格、 |
|
integer |
是 |
数据源类型代码。SQL Server 填写 |
|
integer 或 array of integer |
是 |
连接器用途。 |
|
object |
是 |
连接信息。只填写一组与 |
|
string |
是 |
SQL Server 数据库主机地址。 |
|
integer |
是 |
SQL Server 数据库端口。 |
|
string |
是 |
登录用户名。 |
|
string |
是 |
登录密码。 |
|
string |
否 |
要在连接时打开的数据库名称。省略时先连接到 SQL Server 实例,后续可浏览可访问的数据库。 |
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
连接器名称。去除首尾空白后不能为空;不能包含半角空格、 |
|
integer |
是 |
数据源类型代码。Oracle 填写 |
|
integer 或 array of integer |
是 |
连接器用途。 |
|
object |
是 |
连接信息。只填写一组与 |
|
string |
是 |
Oracle 主机地址。 |
|
integer |
是 |
Oracle 端口。 |
|
string |
是 |
登录用户名。 |
|
string |
是 |
登录密码。 |
|
string |
是 |
要连接的 Oracle 服务名称。 |
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
连接器名称。去除首尾空白后不能为空;不能包含半角空格、 |
|
integer |
是 |
数据源类型代码。PostgreSQL 填写 |
|
integer 或 array of integer |
是 |
连接器用途。 |
|
object |
是 |
连接信息。只填写一组与 |
|
string |
是 |
PostgreSQL 主机地址。 |
|
integer |
是 |
PostgreSQL 端口。 |
|
string |
是 |
登录用户名。 |
|
string |
是 |
登录密码。 |
|
string |
是 |
要连接的数据库名称。连接器创建后仅浏览和导入该数据库。 |
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
连接器名称。去除首尾空白后不能为空;不能包含半角空格、 |
|
integer |
是 |
数据源类型代码。MongoDB 填写 |
|
integer 或 array of integer |
是 |
连接器用途。 |
|
object |
是 |
连接信息。只填写一组与 |
|
string |
是 |
MongoDB 主机地址。 |
|
integer |
是 |
MongoDB 端口。 |
|
string |
是 |
认证方式: |
|
string |
authMode 为 userpass 时必填 |
|
|
string |
否 |
|
|
string |
authMode 为 userpass 时必填 |
|
|
string |
否 |
副本集名称。 |
|
string |
否 |
读取节点偏好,可选 |
|
string |
否 |
读取一致性级别,可选 |
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
连接器名称。去除首尾空白后不能为空;不能包含半角空格、 |
|
integer |
是 |
数据源类型代码。Langfuse 填写 |
|
integer 或 array of integer |
是 |
连接器用途。 |
|
object |
是 |
连接信息。只填写一组与 |
|
string |
是 |
Langfuse 服务地址。 |
|
string |
是 |
Langfuse Public Key。 |
|
string |
是 |
Langfuse Secret Key。该值仅用于提交和校验,不会在后续详情响应中返回。 |
|
string |
否 |
拉取模式。可选 |
成功响应¶
成功时返回 200。服务会保存连接器;检查未通过时,连接器仍会保存,但状态为 failed。记录 data.id,并按 data.status 决定是否继续创建任务。
{
"code": "OK",
"msg": "OK",
"data": {
"id": "conn_01",
"name": "s3-orders-import",
"source_type": 5,
"created_at": 1735632000,
"updated_at": 1735632000,
"status": "active",
"username": "user_01",
"related_task_ids": [],
"usage_type": [1],
"config": {
"s3": {
"endpoint": "https://s3.example.com",
"bucket_name": "orders",
"region": "us-east-1"
}
}
}
}
字段 |
类型 |
说明 |
|---|---|---|
|
string |
成功时为 |
|
string |
成功时为 |
|
object |
已保存的连接器。 |
|
string |
新连接器 ID。 |
|
string |
已保存的连接器名称。 |
|
integer |
已保存的数据源类型代码。 |
|
integer |
创建时间的 Unix 时间戳。 |
|
integer |
更新时间的 Unix 时间戳。 |
|
string |
当前连接器状态。创建后为 |
|
string |
创建该连接器的用户名称。 |
|
array of string |
关联导入任务 ID 列表。新建连接器时为空数组。 |
|
array of integer |
已保存的用途列表: |
|
object |
已保存的连接配置对象。对象结构由 |
错误响应¶
{
"code": "ErrParamInvalid",
"msg": "invalid connector parameters",
"data": null
}
字段 |
类型 |
说明 |
|---|---|---|
|
string |
错误代码。 |
|
string |
可读错误信息。 |
|
null |
错误响应中为 |
后续操作¶
记录 data.id,并按 data.status 决定下一步:状态可用时,按 data.usage_type 前往创建连接器文件导入任务或创建导出任务;状态为失败时,先查看连接器详情或更新连接器处理配置,不要直接创建任务。