创建连接器¶
在当前工作区保存一个外部数据源连接器。创建只保存连接信息,不会开始导入或导出数据。
POST https://moi.matrixorigin.cn/newmoi/connectors
调用前准备¶
先在数据源类型说明中选择数据源和用途,再使用验证连接器配置检查当前填写的连接信息。准备有目标工作区访问权限的个人访问令牌和目标工作区 ID。
下方示例使用:
$AI_STUDIO_API_KEY:实际个人访问令牌,通过X-API-KeyHeader 传递。$WORKSPACE_ID:要创建连接器的工作区 ID,通过X-Workspace-IDHeader 传递。$CONNECTOR_NAME:新连接器名称。$S3_ENDPOINT:目标标准 S3 服务地址。$S3_ACCESS_KEY_ID:目标标准 S3 的访问密钥 ID。$S3_ACCESS_KEY_SECRET:目标标准 S3 的访问密钥。$S3_BUCKET_NAME:要访问的存储桶名称。$S3_REGION:目标存储桶所在区域。
config 按数据源类型嵌套。标准 S3 的 source_type 为 5,其连接配置必须写在 config.s3 中;不要将配置字段直接放在 config 下。
请求体¶
创建连接器时,需要同时指定名称、数据源类型、用途和该类型的连接配置。
本文中,类型后的 [] 表示数组,例如 integer[] 是整数数组。
字段 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
连接器名称。 |
|
integer |
是 |
数据源类型代码。可用类型与用途组合见连接器。 |
|
integer 或 integer[] |
是 |
连接器用途,位掩码。取值: |
|
object |
是 |
类型专属连接配置。顶层键必须与 |
配置类型对应关系¶
当前创建表单中的连接器类型如下。创建时,根据所选 source_type 在 config 中使用对应的顶层键;不要混用不同类型的配置字段。
|
连接器类型 |
|
|---|---|---|
|
MatrixOne |
|
|
阿里云 OSS |
|
|
标准 S3 |
|
|
HDFS |
|
|
Hive |
|
|
MySQL |
|
|
SQL Server |
|
|
Oracle |
|
|
PostgreSQL |
|
|
MongoDB |
|
|
Langfuse |
|
类型专属配置字段¶
以下字段均位于对应的 config 顶层键中。
MatrixOne(source_type: 3)¶
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
MatrixOne 服务地址。 |
|
integer |
是 |
MatrixOne 服务端口。 |
|
string |
是 |
登录用户名。 |
|
string |
是 |
登录密码。 |
|
string |
否 |
默认数据库名称。 |
阿里云 OSS(source_type: 4)¶
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
OSS Endpoint。控制台的“地区”选择会写入该字段。 |
|
string |
是 |
AccessKey ID。 |
|
string |
是 |
AccessKey Secret。 |
|
string |
是 |
存储桶名称,或 |
标准 S3(source_type: 5)¶
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
否 |
S3 服务 Endpoint。 |
|
string |
是 |
访问密钥 ID。 |
|
string |
是 |
访问密钥。 |
|
string |
是 |
存储桶名称,或 |
|
string |
否 |
存储桶所在区域。 |
|
string |
否 |
临时凭据的会话令牌。 |
|
boolean |
否 |
为 |
HDFS(source_type: 7)¶
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
NameNode 地址。可带 |
|
integer |
是 |
认证类型: |
|
string |
Simple 时是 |
Simple 认证的用户名。 |
|
string |
Kerberos 时是 |
Kerberos Principal。 |
|
string |
Kerberos 时条件必填 |
Keytab 文件路径;未提供 |
|
string(Base64) |
Kerberos 时条件必填 |
Keytab 内容;提供后优先于 |
|
string |
Kerberos 时条件必填 |
|
|
string(Base64) |
Kerberos 时条件必填 |
|
|
string |
否 |
Kerberos 认证后的代理用户。 |
|
string |
否 |
连接器访问的基础路径。 |
Hive(source_type: 8)¶
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string(字符串数组) |
是 |
HiveServer2 地址,最多三个,格式为 |
|
integer |
是 |
认证类型: |
|
string |
LDAP 时是 |
LDAP 用户名。 |
|
string |
LDAP 时是 |
LDAP 密码。 |
|
string |
Kerberos 时是 |
客户端 Kerberos Principal。 |
|
string |
Kerberos 时是 |
HiveServer2 服务 Principal。 |
|
string(Base64) |
Kerberos 时是 |
Keytab 内容。 |
|
string(Base64) |
Kerberos 时是 |
|
当前连接器页面仅提供 LDAP 和 Kerberos 两种 Hive 认证方式,不提供 NONE 认证选项。
MySQL(source_type: 9)和 SQL Server(source_type: 10)¶
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
MySQL 数据库主机地址。 |
|
string |
是 |
SQL Server 数据库主机地址。 |
|
integer |
是 |
MySQL 数据库端口。 |
|
integer |
是 |
SQL Server 数据库端口。 |
|
string |
是 |
MySQL 登录用户名。 |
|
string |
是 |
SQL Server 登录用户名。 |
|
string |
是 |
MySQL 登录密码。 |
|
string |
是 |
SQL Server 登录密码。 |
|
string |
否 |
MySQL 默认数据库名称。 |
|
string |
否 |
SQL Server 默认数据库名称。 |
Oracle(source_type: 11)¶
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
Oracle 主机地址。 |
|
integer |
是 |
Oracle 端口。 |
|
string |
是 |
登录用户名。 |
|
string |
是 |
登录密码。 |
|
string |
是 |
Oracle Service Name。 |
PostgreSQL(source_type: 12)¶
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
PostgreSQL 主机地址。 |
|
integer |
是 |
PostgreSQL 端口。 |
|
string |
是 |
登录用户名。 |
|
string |
是 |
登录密码。 |
|
string |
是 |
数据库名称。 |
MongoDB(source_type: 13)¶
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
MongoDB 主机地址。 |
|
integer |
是 |
MongoDB 端口。 |
|
string |
是 |
认证方式: |
|
string |
|
登录用户名。 |
|
string |
|
登录密码。 |
|
string |
|
认证数据库。 |
|
string |
否 |
副本集名称。 |
|
string |
否 |
读取偏好。 |
|
string |
否 |
读取关注级别。可选 |
Langfuse(source_type: 14)¶
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
Langfuse 服务地址。 |
|
string |
是 |
Langfuse Public Key。 |
|
string |
是 |
Langfuse Secret Key。该值仅用于提交和校验,不会在后续详情响应中返回。 |
|
string |
否 |
拉取模式。可选 |
创建 Langfuse 连接器时按以下边界提供字段:
连接器用途: 创建表单不提供用途选择,提交时使用导入用途。
Trace 同步范围: 在 Trace 同步任务中配置
sync_historical、start_from和observation_fields。会话识别与结束: 在 Trace 同步任务中配置
user_id_source、user_id_metadata_key、session_idle_timeout_sec、session_end_strategy、session_end_metadata_key和session_end_metadata_value。轮询与窗口: 在 Trace 同步任务中配置
poll_interval_sec、settled_delay_sec、window_overlap_sec、max_pages_per_tick和max_window_span_sec。创建连接器时不要传入这些字段。服务端维护: 不要传入
secret_key_ref、database_name或target_table。
下方请求以标准 S3 为例。其他类型保留相同的外层请求结构,并将 source_type、config 顶层键和类型专属字段替换为上表对应值。
请求示例¶
curl -X POST "https://moi.matrixorigin.cn/newmoi/connectors" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d "{
\"name\": \"$CONNECTOR_NAME\",
\"source_type\": 5,
\"usage_type\": [1],
\"config\": {
\"s3\": {
\"endpoint\": \"$S3_ENDPOINT\",
\"access_key_id\": \"$S3_ACCESS_KEY_ID\",
\"access_key_secret\": \"$S3_ACCESS_KEY_SECRET\",
\"bucket_name\": \"$S3_BUCKET_NAME\",
\"region\": \"$S3_REGION\"
}
}
}"
成功响应¶
当响应中的 code 为 OK 时,连接器已保存。记录 data.id,后续导入或导出任务需要使用该值。创建成功不表示后续数据传输一定成功。
{
"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 |
成功时为 |
|
string |
新连接器 ID。 |
|
string |
已保存的连接器名称。 |
|
integer |
已保存的数据源类型代码。 |
|
integer |
创建时间的 Unix 时间戳。 |
|
integer |
更新时间的 Unix 时间戳。 |
|
string |
当前连接器状态。创建后为 |
|
string |
配置中的用户名。 |
|
string(字符串数组) |
初始关联任务列表。 |
|
integer(整数数组) |
已保存的用途列表,由服务端从位掩码展开。示例: |
|
object |
已保存的类型专属连接配置。敏感字段可能不返回;字段未返回不表示已保存的凭据被清空。 |
错误响应¶
HTTP 200 不一定表示创建成功。始终检查响应中的 code;只有 code: "OK" 才表示连接器已创建。
{
"code": "ErrParamInvalid",
"msg": "invalid connector parameters",
"data": null
}
常见 HTTP 错误¶
HTTP 状态码 |
错误代码 |
常见原因 |
建议操作 |
|---|---|---|---|
|
|
请求体无效,或名称含不允许字符。 |
修正 JSON 和连接器名称。 |
|
|
请求了当前未启用的数据源类型。 |
选择当前可用的数据源类型。 |
|
|
服务未能创建连接器。 |
检查 |
|
|
服务暂时无法完成创建。 |
稍后重试。 |
后续操作¶
记录 data.id。先根据 data.status 决定下一步:状态可用时,按 data.usage_type 分别前往导入任务的创建任务或导出任务的创建任务;状态为失败时,先查询连接器详情或更新连接器处理配置,不要直接创建任务。需要核对保存结果时,用 data.id 查询连接器详情。