AddAgenticDataSource - 创建数据源

更新时间:
复制 MD 格式

创建一个可供 Agent 数据网关访问的数据源。

接口说明

填写数据源的连接和认证信息。保存前会自动测试连接,连接成功后完成创建并开始同步元数据。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

调试

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。

  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。

  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:

    • 对于必选的资源类型,用前面加 * 表示。

    • 对于不支持资源级授权的操作,用全部资源表示。

  • 条件关键字:是指云产品自身定义的条件关键字。

  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。

操作

访问级别

资源类型

条件关键字

关联操作

dms:AddAgenticDataSource

create

*全部资源

*

无 无

请求语法

POST  HTTP/1.1

请求参数

名称

类型

必填

描述

示例值

InstanceSource

string

是

数据源来源。取值:RDS-云数据库实例,PUBLIC_OWN-公网自建数据库,ECS_OWN-ECS 自建数据库,GATEWAY-通过数据库网关接入,VPC_IDC-专有网络或 IDC 接入。

RDS

InstanceResourceId

string

否

选择已有云实例时填写云资源实例 ID;按连接地址录入时可不填。

rm-bp1234567890

Alias

string

否

数据源的显示名称;不填时由服务端生成。

demo_mysql

CatalogName

string

否

元数据目录(Catalog)名称;不填时自动生成。最长 128 个字符,以中文、字母或下划线开头,后续可包含数字和连字符,不能为纯数字。

demo_catalog

DbType

string

是

数据源类型,使用大写标识,不要传数字。当前支持:MYSQL、POSTGRESQL、ORACLE、SQLSERVER、MARIADB、POLARDB、POLARDB_POSTGRESQL、POLARDB_ORACLE、OCEANBASEX、DRDS、ADB_MYSQL、ADB_POSTGRESQL、CLICKHOUSE、SELECTDB、STARROCKS、HOLOGRES、MAXCOMPUTE、ES_REST、TRINO。

MYSQL

Host

string

否

可选。数据库域名或 IP,不包含协议、路径和端口;选择已有云实例且地址已自动带出时可不填。

mysql.example.com

Port

integer

否

可选。数据库服务端口;选择已有云实例且端口已自动带出时可不填。

3306

Schema

string

否

可选。ADB_POSTGRESQL、DRDS、POSTGRESQL、POLARDB_POSTGRESQL 填数据库名;ORACLE 填 SID 或服务名,服务名前加 /;POLARDB_ORACLE 填 SID;MAXCOMPUTE 填 Project;其他类型不填。

postgres

SnowflakeWarehouse

string

否

Snowflake 计算仓库名称,仅 DbType=SNOWFLAKE 生效

WAREHOUSE

SnowflakeRole

string

否

Snowflake 角色名称,仅 DbType=SNOWFLAKE 生效

ROLE

AdbSparkResourceGroup

string

否

ADB MySQL Spark 资源组名称,仅 DbType=ADB_MYSQL_SPARK 生效。该类型连接时必须指定资源组;与 Schema(数据库名)独立,不能相互替代。

resourceGroup1

AuthType

integer

否

可选。取值:-1-无需认证,0-用户名和密码,1-仅密码,2-免密。

0

AuthAccount

string

否

登录用户名;无需用户名的认证方式可不填。

db_user

AuthPassword

string

否

登录密码;属于敏感信息,请勿记录或泄露。

P@ss****

UseSsl

integer

否

是否使用 SSL:1-启用,0-关闭,-1-使用默认设置。仅 ADB_MYSQL、CLICKHOUSE、MARIADB、MYSQL、OCEANBASEX、POLARDB、SELECTDB、STARROCKS 支持 SSL,其他类型不填。

1

RoleArn

string

否

使用阿里云 RAM 角色访问数据源时填写完整角色 ARN;其他场景不填。

acs:ram::123456789012****:role/DataSourceRole

KmsSecret

string

否

使用 KMS 托管数据库凭据时填写凭据名称;其他场景不填。

datasource-secret

EnvType

string

否

环境类型。取值:product、pre、dev、test、sit、uat、pet、stag。

product

SyncAlias

integer

否

是否使用云端实例名称作为数据源名称:1-是,0-否;仅选择云数据库实例时有效。

0

CreateMode

string

否

录入方式:INSTANCE_ID-选择已有云实例,HOST_PORT-按连接地址和端口录入;不填时按 HOST_PORT 处理。

HOST_PORT

PolicyId

string

否

可选。数据访问安全策略 ID,用于控制该数据源的访问和保护规则。

sp-usr-example

VpcId

string

否

通过专有网络访问 MaxCompute 时填写目标 VPC ID;其他场景不填。

vpc-bp1234567890

ZoneId

string

否

通过专有网络访问 MaxCompute 时填写目标可用区 ID;其他场景不填。

cn-hangzhou-h

VSwitchId

string

否

通过专有网络访问 MaxCompute 时填写目标交换机 ID;其他场景不填。

vsw-bp1234567890

InstanceSource 和 DbType 按接口模型要求传入;其他参数按接入方式选填。

返回参数

名称

类型

描述

示例值

object

接口响应。

Data

object

创建后的数据源详情。

AdbSparkResourceGroup

string

ADB MySQL Spark 资源组名称,仅 DbType=ADB_MYSQL_SPARK 的数据源详情返回;与 Schema(数据库名)独立。

resourceGroup1

Alias

string

数据源的显示名称。

demo_mysql

AuthAccount

string

数据源登录用户名;未使用用户名认证时为空。

db_user

AuthPassword

string

密码或令牌的脱敏值,不会返回真实内容。

P@ss****

AuthType

integer

认证方式:-1-无需认证,0-用户名和密码,1-仅密码,2-免密。

0

CatalogName

string

数据源关联的元数据目录(Catalog)名称。

demo_catalog

CreateMode

string

数据源录入方式:INSTANCE_ID-选择已有云实例,HOST_PORT-按连接地址和端口录入。

HOST_PORT

DataSourceUuid

string

数据源的唯一标识。

cn-hangzhou_a1b2c3d4e5f6

DbType

string

数据源类型。当前支持:MYSQL、POSTGRESQL、ORACLE、SQLSERVER、MARIADB、POLARDB、POLARDB_POSTGRESQL、POLARDB_ORACLE、OCEANBASEX、DRDS、ADB_MYSQL、ADB_POSTGRESQL、CLICKHOUSE、SELECTDB、STARROCKS、HOLOGRES、MAXCOMPUTE、ES_REST、TRINO。

MYSQL

EnvType

string

环境类型。取值:product、pre、dev、test、sit、uat、pet、stag。

product

GmtCreate

string

数据源创建时间,格式为 yyyy-MM-dd HH:mm:ss。

2026-10-13 14:30:00

GmtModified

string

数据源最后修改时间,格式为 yyyy-MM-dd HH:mm:ss。

2026-10-13 14:35:00

Host

string

数据源连接地址;敏感场景可能返回脱敏值。

mysql.example.com

InstanceResourceId

string

云资源实例 ID;按连接地址录入的数据源可能为空。

rm-bp1234567890

InstanceSource

string

数据源来源。取值:RDS-云数据库实例,PUBLIC_OWN-公网自建数据库,ECS_OWN-ECS 自建数据库,GATEWAY-通过数据库网关接入,VPC_IDC-专有网络或 IDC 接入。

RDS

KmsSecret

string

KMS 托管凭据名称;未使用 KMS 时为空,属于敏感信息。

datasource-secret

PolicyId

string

当前使用的数据访问安全策略 ID;未设置时为空。

sp-usr-example

Port

integer

数据源连接端口。

3306

RegionId

string

数据源所在地域。

cn-hangzhou

ResourceAccountId

string

资源所属的阿里云主账号 ID。

123456789012****

RoleArn

string

访问数据源使用的阿里云 RAM 角色 ARN;未使用角色授权时为空。

acs:ram::123456789012****:role/DataSourceRole

Schema

string

连接目标名称。ADB_POSTGRESQL、DRDS、POSTGRESQL、POLARDB_POSTGRESQL 表示数据库名;ORACLE 表示 SID 或服务名;POLARDB_ORACLE 表示 SID;MAXCOMPUTE 表示 Project;其他类型通常为空。

postgres

State

integer

数据源状态:0-正常,-1-已删除,-2-已禁用。

0

SyncAlias

integer

是否使用云端实例名称作为数据源名称:1-是,0-否。

0

UseSsl

integer

SSL 设置:1-启用,0-关闭,-1-使用默认设置。

1

ErrorCode

string

调用失败时返回的错误码;成功时为空。

InvalidParameter

ErrorMessage

string

调用失败时返回的错误信息;成功时为空。

参数不合法。

RequestId

string

请求 ID,用于定位本次调用。

request-1234567890

Success

boolean

本次调用是否成功。

返回创建后的数据源信息。

示例

正常返回示例

JSON格式

{
  "Data": {
    "AdbSparkResourceGroup": "resourceGroup1",
    "Alias": "demo_mysql",
    "AuthAccount": "db_user",
    "AuthPassword": "P@ss****",
    "AuthType": 0,
    "CatalogName": "demo_catalog",
    "CreateMode": "HOST_PORT",
    "DataSourceUuid": "cn-hangzhou_a1b2c3d4e5f6",
    "DbType": "MYSQL",
    "EnvType": "product",
    "GmtCreate": "2026-10-13 14:30:00",
    "GmtModified": "2026-10-13 14:35:00",
    "Host": "mysql.example.com",
    "InstanceResourceId": "rm-bp1234567890",
    "InstanceSource": "RDS",
    "KmsSecret": "datasource-secret",
    "PolicyId": "sp-usr-example",
    "Port": 3306,
    "RegionId": "cn-hangzhou",
    "ResourceAccountId": "123456789012****",
    "RoleArn": "acs:ram::123456789012****:role/DataSourceRole",
    "Schema": "postgres",
    "State": 0,
    "SyncAlias": 0,
    "UseSsl": 1
  },
  "ErrorCode": "InvalidParameter",
  "ErrorMessage": "参数不合法。",
  "RequestId": "request-1234567890",
  "Success": true
}

错误码

访问错误中心查看更多错误码。

变更历史

更多信息,参考变更详情。