ALIYUN::APIG::HttpApi类型用于创建HTTP API。
语法
{
"Type": "ALIYUN::APIG::HttpApi",
"Properties": {
"AuthConfig": Map,
"AgentProtocols": List,
"ResourceGroupId": String,
"Strategy": String,
"EnableAuth": Boolean,
"BelongGatewayId": String,
"IngressConfig": Map,
"ModelCategory": String,
"VersionConfig": Map,
"OnlyChangeConfig": Boolean,
"RemoveBasePathOnForward": Boolean,
"FirstByteTimeout": Integer,
"DeployConfigs": List,
"BuiltinRouteNames": List,
"AiProtocols": List,
"HttpApiName": String,
"Protocols": List,
"BasePath": String,
"Description": String,
"Type": String
}
}
属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
HttpApiName |
String |
是 |
否 |
API 名称。 |
无。 |
|
AgentProtocols |
List |
否 |
是 |
代理支持的协议列表 |
无 |
|
AiProtocols |
List |
否 |
是 |
AI 协议列表。 |
无 |
|
AuthConfig |
Map |
否 |
是 |
权限认证配置 |
更多信息,请参考AuthConfig属性。 |
|
BasePath |
String |
否 |
是 |
API 基础路径。 |
需要以/开头。 |
|
BelongGatewayId |
String |
否 |
否 |
所属网关 ID |
无 |
|
BuiltinRouteNames |
List |
否 |
否 |
内置路由名称列表 |
无 |
|
DeployConfigs |
List |
否 |
是 |
API 部署配置列表。 |
更多信息,请参考DeployConfigs属性。 |
|
Description |
String |
否 |
是 |
API 描述。 |
无。 |
|
EnableAuth |
Boolean |
否 |
是 |
是否开启权限认证 |
无 |
|
FirstByteTimeout |
Integer |
否 |
是 |
首字节超时时间 |
无 |
|
IngressConfig |
Map |
否 |
是 |
HTTP Ingress API 配置信息。 |
更多信息,请参考IngressConfig属性。 |
|
ModelCategory |
String |
否 |
否 |
模型类别 |
无 |
|
OnlyChangeConfig |
Boolean |
否 |
是 |
仅修改配置 |
无 |
|
Protocols |
List |
否 |
是 |
API 访问协议列表。 |
取值:
|
|
RemoveBasePathOnForward |
Boolean |
否 |
是 |
转发时是否移除基础路径 |
无 |
|
ResourceGroupId |
String |
否 |
否 |
资源组 ID。 |
无 |
|
Strategy |
String |
否 |
否 |
导入的冲突合并策略 |
无 |
|
Type |
String |
否 |
否 |
HTTP API 的类型。 |
取值:
|
|
VersionConfig |
Map |
否 |
是 |
API 版本化配置 |
更多信息,请参考VersionConfig属性。 |
AuthConfig语法
"AuthConfig":{
"AuthType": String,
"AuthMode": String
}
AuthConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
AuthMode |
String |
否 |
是 |
认证模式 |
无 |
|
AuthType |
String |
否 |
是 |
认证类型 |
无 |
VersionConfig语法
"VersionConfig":{
"Enable": Boolean,
"QueryName": String,
"HeaderName": String,
"Scheme": String,
"Version": String
}
VersionConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
Enable |
Boolean |
否 |
是 |
是否启用版本化控制。 |
无 |
|
HeaderName |
String |
否 |
是 |
Header 版本化方案时,指定的 Header 参数中的 Key。 |
无 |
|
QueryName |
String |
否 |
是 |
Query 版本化方案时,指定的 Query 参数中的 Key。 |
无 |
|
Scheme |
String |
否 |
是 |
版本化方案。 |
取值:
|
|
Version |
String |
否 |
是 |
版本号。 |
无 |
IngressConfig语法
"IngressConfig":{
"EnvironmentId": String,
"WatchNamespace": String,
"OverrideIngressIp": Boolean,
"ClusterId": String,
"IngressClass": String,
"SourceId": String
}
IngressConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
ClusterId |
String |
否 |
是 |
集群 ID。 |
无 |
|
EnvironmentId |
String |
否 |
是 |
环境 ID。 |
无 |
|
IngressClass |
String |
否 |
是 |
监听的 Ingress Class。 |
无 |
|
OverrideIngressIp |
Boolean |
否 |
是 |
是否更新 Ingress Status 里的地址。 |
无 |
|
SourceId |
String |
否 |
是 |
来源 ID。 |
无 |
|
WatchNamespace |
String |
否 |
是 |
监听的命名空间。 |
无 |
DeployConfigs语法
"DeployConfigs":
[{
"AutoDeploy": Boolean,
"Mock": Map,
"GatewayType": String,
"GatewayInfo": Map,
"ServiceConfigs": List,
"BackendScene": String,
"CustomDomainIds": List,
"SubDomains": List,
"PolicyConfigs": List,
"EnvironmentId": String,
"CustomDomainInfos": List,
"RouteBackend": Map,
"GatewayId": String
}]
DeployConfigs属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
AutoDeploy |
Boolean |
否 |
是 |
是否自动部署。 |
无 |
|
BackendScene |
String |
否 |
是 |
发布场景。 |
无 |
|
CustomDomainIds |
List |
否 |
是 |
用户自定义域名 ID 列表。 |
无 |
|
CustomDomainInfos |
List |
否 |
是 |
用户自定义域名内容列表。 |
更多信息,请参考CustomDomainInfos属性。 |
|
EnvironmentId |
String |
否 |
是 |
环境 ID。 |
无 |
|
GatewayId |
String |
否 |
是 |
网关实例 ID。 |
无 |
|
GatewayInfo |
Map |
否 |
是 |
网关信息。 |
更多信息,请参考GatewayInfo属性。 |
|
GatewayType |
String |
否 |
是 |
网关类型。 |
无 |
|
Mock |
Map |
否 |
是 |
Mock 配置。 |
无 |
|
PolicyConfigs |
List |
否 |
是 |
策略配置列表。 |
更多信息,请参考PolicyConfigs属性。 |
|
RouteBackend |
Map |
否 |
是 |
后端服务信息。 |
无 |
|
ServiceConfigs |
List |
否 |
是 |
服务配置列表。 |
更多信息,请参考ServiceConfigs属性。 |
|
SubDomains |
List |
否 |
是 |
二级域名内容列表。 |
更多信息,请参考SubDomains属性。 |
GatewayInfo语法
"GatewayInfo":{
"EngineVersion": String,
"Name": String,
"VpcInfo": Map,
"GatewayId": String
}
GatewayInfo属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
EngineVersion |
String |
否 |
是 |
网关引擎版本。 |
无 |
|
GatewayId |
String |
否 |
是 |
网关 id。 |
无 |
|
Name |
String |
否 |
是 |
网关名称。 |
无 |
|
VpcInfo |
Map |
否 |
是 |
vpc 信息。 |
更多信息,请参考VpcInfo属性。 |
VpcInfo语法
"VpcInfo":{
"VpcId": String,
"Name": String
}
VpcInfo属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
Name |
String |
否 |
是 |
专有网络名称。 |
无 |
|
VpcId |
String |
否 |
是 |
专有网络 ID。 |
无 |
SubDomains语法
"SubDomains":[{
"DomainId": String,
"Protocol": String,
"Name": String,
"NetworkType": String
}]
SubDomains属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
DomainId |
String |
否 |
是 |
域名 ID。 |
无 |
|
Name |
String |
否 |
是 |
域名名称。 |
无 |
|
NetworkType |
String |
否 |
是 |
网络类型。 |
无 |
|
Protocol |
String |
否 |
是 |
协议。 |
无 |
ServiceConfigs语法
"SubDomains":[{
"ServiceId": String,
"PassThroughModelName": Boolean,
"Name": String,
"TargetModelName": String
}]
ServiceConfigs属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
Name |
String |
否 |
是 |
服务名称。 |
无 |
|
PassThroughModelName |
Boolean |
否 |
是 |
透传模型名称 |
无 |
|
ServiceId |
String |
否 |
是 |
服务 ID。 |
无 |
|
TargetModelName |
String |
否 |
是 |
目标模型名称。 |
无 |
CustomDomainInfos语法
"CustomDomainInfos":[{
"DomainId": String,
"Protocol": String,
"Name": String
}]
CustomDomainInfos属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
DomainId |
String |
否 |
是 |
域名 ID。 |
无 |
|
Name |
String |
否 |
是 |
域名名称。 |
无 |
|
Protocol |
String |
否 |
是 |
协议。 |
无 |
PolicyConfigs语法
"PolicyConfigs":[{
"Enable": Boolean,
"SemanticRouterConfig": Map,
"AiToolSelectionConfig": Map,
"AiSecurityGuardConfig": Map,
"Type": String,
"AiStatisticsConfig": Map,
"AiFallbackConfig": Map,
"AiNetworkSearchConfig": Map,
"AiTokenRateLimitConfig": Map,
"AiCacheConfig": Map
}]
PolicyConfigs属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
AiCacheConfig |
Map |
否 |
是 |
AI 缓存配置。 |
更多信息,请参考AiCacheConfig属性。 |
|
AiFallbackConfig |
Map |
否 |
是 |
AI 降级配置。 |
更多信息,请参考AiFallbackConfig属性。 |
|
AiNetworkSearchConfig |
Map |
否 |
是 |
AI 网络搜索配置。 |
更多信息,请参考AiNetworkSearchConfig属性。 |
|
AiSecurityGuardConfig |
Map |
否 |
是 |
AI 安全防护配置。 |
更多信息,请参考AiSecurityGuardConfig属性。 |
|
AiStatisticsConfig |
Map |
否 |
是 |
AI 统计配置。 |
更多信息,请参考AiStatisticsConfig属性。 |
|
AiTokenRateLimitConfig |
Map |
否 |
是 |
AI 令牌速率限制配置。 |
更多信息,请参考AiTokenRateLimitConfig属性。 |
|
AiToolSelectionConfig |
Map |
否 |
是 |
协议。 |
更多信息,请参考AiToolSelectionConfig属性。 |
|
Enable |
Boolean |
否 |
是 |
是否启用。 |
无 |
|
SemanticRouterConfig |
Map |
否 |
是 |
语义路由配置。 |
更多信息,请参考SemanticRouterConfig属性。 |
|
Type |
String |
否 |
是 |
策略模板类型。 |
无 |
AiStatisticsConfig语法
"AiStatisticsConfig":{
"LogResponseContent": Boolean,
"PathFieldConfigs": List,
"LogRequestContent": Boolean
}
AiStatisticsConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
LogRequestContent |
Boolean |
否 |
是 |
是否记录请求内容 |
无 |
|
LogResponseContent |
Boolean |
否 |
是 |
是否记录响应内容 |
无 |
|
PathFieldConfigs |
List |
否 |
是 |
自定义字段采集配置列表,按 API 路径维度配置 |
更多信息,请参考PathFieldConfigs属性。 |
PathFieldConfigs语法
"PathFieldConfigs":{
"Path": String,
"FieldPaths": List
}
PathFieldConfigs属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
FieldPaths |
List |
否 |
是 |
字段采集配置。 |
无 |
|
Path |
String |
否 |
是 |
API 路径 |
无 |
AiNetworkSearchConfig语法
"AiNetworkSearchConfig":{
"SearchFrom": Map,
"NeedReference": Boolean,
"SearchRewrite": Map,
"PluginStatus": Map,
"DefaultLang": String,
"DefaultEnable": Boolean,
"SearchEngineConfig": Map,
"ReferenceFormat": String,
"ReferenceLocation": String
}
AiNetworkSearchConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
DefaultEnable |
Boolean |
否 |
是 |
默认启用 |
无 |
|
DefaultLang |
String |
否 |
是 |
默认语言 |
无 |
|
NeedReference |
Boolean |
否 |
是 |
是否需要引用 |
无 |
|
PluginStatus |
Map |
否 |
是 |
插件状态。 |
更多信息,请参考PluginStatus属性。 |
|
ReferenceFormat |
String |
否 |
是 |
引用格式 |
无 |
|
ReferenceLocation |
String |
否 |
是 |
引用位置 |
无 |
|
SearchEngineConfig |
Map |
否 |
是 |
搜索引擎配置 |
更多信息,请参考SearchEngineConfig属性。 |
|
SearchFrom |
Map |
否 |
是 |
搜索来源 |
更多信息,请参考SearchFrom属性。 |
|
SearchRewrite |
Map |
否 |
是 |
搜索重写 |
更多信息,请参考SearchRewrite属性。 |
SearchFrom语法
"SearchFrom":{
"OptionArgs": String,
"Type": String,
"ApiKey": String,
"TimeRange": Map,
"Industry": String,
"Endpoint": String,
"ContentMode": String,
"Start": Integer,
"TimeoutMillisecond": Integer,
"Count": Integer
}
SearchFrom属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
ApiKey |
String |
否 |
是 |
API Key |
无 |
|
ContentMode |
String |
否 |
是 |
内容模式 |
无 |
|
Count |
Integer |
否 |
是 |
统计项数量 |
无 |
|
Endpoint |
String |
否 |
是 |
网关接入点。 |
无 |
|
Industry |
String |
否 |
是 |
实例行业类型 |
无 |
|
OptionArgs |
String |
否 |
是 |
可选参数 |
无 |
|
Start |
Integer |
否 |
是 |
日程开始时间。 |
无 |
|
TimeoutMillisecond |
Integer |
否 |
是 |
超时时间 |
无 |
|
TimeRange |
Map |
否 |
是 |
时间范围 |
无 |
|
Type |
String |
否 |
是 |
类型。 |
无 |
PluginStatus语法
"PluginStatus":{
"ErrorLogs": String,
"ServiceHealthy": Boolean,
"PluginId": String
}
PluginStatus属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
ErrorLogs |
String |
否 |
是 |
错误日志 |
无 |
|
PluginId |
String |
否 |
是 |
插件 ID |
无 |
|
ServiceHealthy |
String |
否 |
是 |
服务健康状态 |
无 |
SearchEngineConfig语法
"SearchEngineConfig":{
"OptionArgs": String,
"Type": String,
"ApiKey": String,
"TimeRange": Map,
"Industry": String,
"Endpoint": String,
"ContentMode": String,
"Start": Integer,
"TimeoutMillisecond": Integer,
"Count": Integer
}
SearchEngineConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
ApiKey |
String |
否 |
是 |
API Key |
无 |
|
ContentMode |
String |
否 |
是 |
内容模式 |
无 |
|
Count |
Integer |
否 |
是 |
数量 |
无 |
|
Endpoint |
String |
否 |
是 |
接入点 |
无 |
|
Industry |
String |
否 |
是 |
实例行业类型 |
无 |
|
OptionArgs |
String |
否 |
是 |
错误日志 |
无 |
|
Start |
Integer |
否 |
是 |
开始时间 |
无 |
|
TimeoutMillisecond |
Integer |
否 |
是 |
超时时间 |
无 |
|
TimeRange |
Map |
否 |
是 |
时间范围 |
无 |
|
Type |
String |
否 |
是 |
插件类型。 |
无 |
SearchRewrite语法
"SearchRewrite":{
"Enable": Boolean,
"MaxCount": Integer,
"ModelName": String,
"ServiceId": String,
"TimeoutMillisecond": Integer
}
SearchRewrite属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
Enable |
Boolean |
否 |
是 |
是否启用 |
无 |
|
MaxCount |
Integer |
否 |
是 |
最大数量 |
无 |
|
ModelName |
String |
否 |
是 |
模型名称 |
无 |
|
ServiceId |
String |
否 |
是 |
服务 ID |
无 |
|
TimeoutMillisecond |
Integer |
否 |
是 |
超时时间 |
无 |
AiFallbackConfig语法
"AiFallbackConfig":{
"OnlyRedirectUpstreamCode": Boolean,
"ServiceConfigs": List,
"RouteEmbedded": Boolean
}
AiFallbackConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
OnlyRedirectUpstreamCode |
Boolean |
否 |
是 |
仅重定向上游编码 |
无 |
|
RouteEmbedded |
Boolean |
否 |
是 |
是否内嵌路由 |
无 |
|
ServiceConfigs |
List |
否 |
是 |
服务配置列表 |
更多信息,请参考ServiceConfigs属性。 |
AiTokenRateLimitConfig语法
"AiTokenRateLimitConfig":{
"GlobalRules": List,
"RedisConfig": Map,
"PluginStatus": Map,
"EnableGlobalRules": Boolean,
"Rules": List
}
AiTokenRateLimitConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
EnableGlobalRules |
Boolean |
否 |
是 |
启用全局规则 |
无 |
|
GlobalRules |
List |
否 |
是 |
全局规则 |
更多信息,请参考GlobalRules属性。 |
|
PluginStatus |
Map |
否 |
是 |
插件状态。 |
更多信息,请参考PluginStatus属性。 |
|
RedisConfig |
Map |
否 |
是 |
Redis 配置 |
更多信息,请参考RedisConfig属性。 |
|
Rules |
List |
否 |
是 |
规则列表 |
更多信息,请参考Rules属性。 |
Rules语法
"Rules":[{
"LimitType": String,
"MatchKey": String,
"LimitMode": String,
"LimitValue": Integer,
"MatchType": String,
"MatchValue": String
}]
Rules属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
LimitMode |
String |
否 |
是 |
限流模式 |
无 |
|
LimitType |
String |
否 |
是 |
限流类型 |
无 |
|
LimitValue |
String |
否 |
是 |
限流值 |
无 |
|
MatchKey |
String |
否 |
是 |
匹配键 |
无 |
|
MatchType |
String |
否 |
是 |
查询匹配类型 |
无 |
|
MatchValue |
String |
否 |
是 |
匹配值 |
无 |
GlobalRules语法
"GlobalRules":[{
"LimitType": String,
"MatchKey": String,
"LimitMode": String,
"LimitValue": Integer,
"MatchType": String,
"MatchValue": String
}]
GlobalRules属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
LimitMode |
String |
否 |
是 |
限流模式 |
无 |
|
LimitType |
String |
否 |
是 |
限流类型 |
无 |
|
LimitValue |
String |
否 |
是 |
限流值 |
无 |
|
MatchKey |
String |
否 |
是 |
匹配键 |
无 |
|
MatchType |
String |
否 |
是 |
查询匹配类型 |
无 |
|
MatchValue |
String |
否 |
是 |
匹配值 |
无 |
RedisConfig语法
"RedisConfig":{
"Host": String,
"Username": String,
"Port": Integer,
"Timeout": Integer,
"DatabaseNumber": Integer,
"Password": String
}
RedisConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
DatabaseNumber |
Integer |
否 |
是 |
数据库连接数 |
无 |
|
Host |
String |
否 |
是 |
节点的 IP 地址。 |
无 |
|
Password |
String |
否 |
是 |
密码 |
无 |
|
Port |
Integer |
否 |
是 |
端口号 |
无 |
|
Timeout |
Integer |
否 |
是 |
健康检查响应超时时间。 |
单位:秒。 |
|
Username |
String |
否 |
是 |
用户名 |
无 |
AiCacheConfig语法
"AiCacheConfig":{
"CacheTTL": Integer,
"CacheKeyStrategy": String,
"VectorConfig": Map,
"PluginStatus": Map,
"RedisConfig": Map,
"EmbeddingConfig": Map,
"CacheMode": String
}
AiCacheConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
CacheKeyStrategy |
String |
否 |
是 |
缓存键策略 |
无 |
|
CacheMode |
String |
否 |
是 |
缓存模式 |
|
|
CacheTTL |
Integer |
否 |
是 |
缓存生存时间(TTL) |
无 |
|
EmbeddingConfig |
Map |
否 |
是 |
嵌入配置 |
更多信息,请参考EmbeddingConfig属性。 |
|
PluginStatus |
Map |
否 |
是 |
插件状态。 |
更多信息,请参考PluginStatus属性。 |
|
RedisConfig |
Map |
否 |
是 |
Redis 配置 |
更多信息,请参考RedisConfig属性。 |
|
VectorConfig |
Map |
否 |
是 |
向量配置 |
更多信息,请参考VectorConfig属性。 |
EmbeddingConfig语法
"EmbeddingConfig":{
"ModelName": String,
"ServiceId": String,
"Type": String,
"Timeout": Integer
}
EmbeddingConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
ModelName |
String |
否 |
是 |
模型名称 |
无 |
|
ServiceId |
String |
否 |
是 |
服务 ID |
无 |
|
Timeout |
Integer |
否 |
是 |
健康检查响应超时时间。 |
单位:秒。 |
|
Type |
String |
否 |
是 |
类型 |
无 |
VectorConfig语法
"VectorConfig":{
"ApiKey": String,
"Timeout": Integer,
"ServiceHost": String,
"Type": String,
"Threshold": Number,
"CollectionId": String
}
VectorConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
ApiKey |
String |
否 |
是 |
API Key |
无 |
|
CollectionId |
String |
否 |
是 |
集合 ID |
无 |
|
ServiceHost |
String |
否 |
是 |
服务主机地址 |
无 |
|
Threshold |
Number |
否 |
是 |
阈值 |
无 |
|
Timeout |
Integer |
否 |
是 |
健康检查响应超时时间。 |
单位:秒。 |
|
Type |
Integer |
否 |
是 |
类型 |
无 |
AiSecurityGuardConfig语法
"AiSecurityGuardConfig":{
"RiskConfig": List,
"ConsumerRequestCheckService": List,
"RequestImageCheckService": String,
"CheckResponseImage": Boolean,
"RiskAlertLevel": String,
"CheckResponse": Boolean,
"BufferLimit": Integer,
"PluginStatus": Map,
"RequestCheckService": String,
"CheckRequest": Boolean,
"ConsumerRiskLevel": List,
"ResponseCheckService": String,
"ConsumerResponseCheckService": List,
"ResponseImageCheckService": String,
"CheckRequestImage": Boolean,
"ServiceAddress": String
}
AiSecurityGuardConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
BufferLimit |
Integer |
否 |
是 |
缓冲区大小上限 |
无 |
|
CheckRequest |
Boolean |
否 |
是 |
检查请求 |
无 |
|
CheckRequestImage |
Boolean |
否 |
是 |
检查请求中的图像 |
无 |
|
CheckResponse |
Boolean |
否 |
是 |
检查响应 |
无 |
|
CheckResponseImage |
Boolean |
否 |
是 |
检查响应中的图像 |
无 |
|
ConsumerRequestCheckService |
List |
否 |
是 |
消费者请求校验服务 |
更多信息,请参考ConsumerRequestCheckService属性。 |
|
ConsumerResponseCheckService |
List |
否 |
是 |
消费者响应校验服务 |
更多信息,请参考ConsumerResponseCheckService属性。 |
|
ConsumerRiskLevel |
List |
否 |
是 |
消费者风险等级 |
更多信息,请参考ConsumerRiskLevel属性。 |
|
PluginStatus |
Map |
否 |
是 |
插件当前状态 |
更多信息,请参考PluginStatus属性。 |
|
RequestCheckService |
String |
否 |
是 |
请求检查服务 |
无 |
|
RequestImageCheckService |
String |
否 |
是 |
请求图像检查服务 |
无 |
|
ResponseCheckService |
String |
否 |
是 |
响应检查服务 |
无 |
|
ResponseImageCheckService |
String |
否 |
是 |
响应图像检查服务 |
无 |
|
RiskAlertLevel |
String |
否 |
是 |
风险告警级别 |
无 |
|
RiskConfig |
List |
否 |
是 |
风险配置 |
更多信息,请参考RiskConfig属性。 |
|
ServiceAddress |
String |
否 |
是 |
服务地址 |
无 |
ConsumerRiskLevel语法
"ConsumerRiskLevel":[{
"Level": String,
"Name": String,
"Type": String,
"MatchType": String
}]
ConsumerRiskLevel属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
Level |
String |
否 |
是 |
冲突等级 |
无 |
|
MatchType |
String |
否 |
是 |
查询匹配类型 |
无 |
|
Name |
String |
否 |
是 |
参数名称。 |
无 |
|
Type |
String |
否 |
是 |
类型 |
无 |
RiskConfig语法
"RiskConfig":[{
"ConsumerRules": Map,
"Type": String,
"Level": String
}]
RiskConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
ConsumerRules |
Map |
否 |
是 |
消费者规则 |
更多信息,请参考ConsumerRules属性。 |
|
Level |
String |
否 |
是 |
冲突等级 |
无 |
|
Type |
String |
否 |
是 |
插件类型。 |
无 |
ConsumerRules语法
"ConsumerRules":{
"Pattern": String,
"MatchType": String
}
ConsumerRules属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
MatchType |
String |
否 |
是 |
查询匹配类型 |
无 |
|
Pattern |
String |
否 |
是 |
匹配模式 |
无 |
ConsumerRequestCheckService语法
"ConsumerRequestCheckService":[{
"RequestCheckService": String,
"ModalityType": String,
"MatchType": String,
"RequestImageCheckService": String,
"Name": String
}]
ConsumerRequestCheckService属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
MatchType |
String |
否 |
是 |
查询匹配类型 |
无 |
|
ModalityType |
String |
否 |
是 |
模态类型 |
无 |
|
Name |
String |
否 |
是 |
服务名称 |
无 |
|
RequestCheckService |
String |
否 |
是 |
请求校验服务 |
无 |
|
RequestImageCheckService |
String |
否 |
是 |
请求图片校验服务 |
无 |
ConsumerResponseCheckService语法
"ConsumerResponseCheckService":[{
"ModalityType": String,
"ResponseCheckService": String,
"MatchType": String,
"ResponseImageCheckService": String,
"Name": String
}]
ConsumerResponseCheckService属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
MatchType |
String |
否 |
是 |
查询匹配类型 |
无 |
|
ModalityType |
String |
否 |
是 |
模态类型 |
无 |
|
Name |
String |
否 |
是 |
服务名称 |
无 |
|
ResponseCheckService |
String |
否 |
是 |
响应检查服务 |
无 |
|
ResponseImageCheckService |
String |
否 |
是 |
响应图像检查服务 |
无 |
SemanticRouterConfig语法
"SemanticRouterConfig":{
"TimeoutMillisecond": Integer
}
SemanticRouterConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
TimeoutMillisecond |
Integer |
否 |
是 |
超时时间 |
无 |
AiToolSelectionConfig语法
"AiToolSelectionConfig":{
"EnableConditions": Map,
"QueryRewriting": Map,
"ToolReranking": Map,
"PluginStatus": Map
}
AiToolSelectionConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
EnableConditions |
Map |
否 |
是 |
启用条件 |
更多信息,请参考EnableConditions属性。 |
|
PluginStatus |
Map |
否 |
是 |
插件状态 |
更多信息,请参考PluginStatus属性。 |
|
QueryRewriting |
Map |
否 |
是 |
查询重写 |
更多信息,请参考QueryRewriting属性。 |
|
ToolReranking |
Map |
否 |
是 |
工具重排序 |
更多信息,请参考ToolReranking属性。 |
QueryRewriting语法
"QueryRewriting":{
"FallbackStrategy": String,
"TriggerConditions": Map,
"ContextSelection": Map,
"MaxOutputTokens": Integer,
"ModelService": Map,
"Enabled": Boolean,
"PromptConfig": Map
}
QueryRewriting属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
ContextSelection |
Map |
否 |
是 |
上下文选择 |
更多信息,请参考ContextSelection属性。 |
|
Enabled |
Boolean |
否 |
是 |
是否开启集群审计日志功能。 |
无 |
|
FallbackStrategy |
String |
否 |
是 |
回退策略 |
无 |
|
MaxOutputTokens |
Integer |
否 |
是 |
最大输出令牌数 |
无 |
|
ModelService |
Map |
否 |
是 |
模型服务 |
更多信息,请参考ModelService属性。 |
|
PromptConfig |
Map |
否 |
是 |
提示词配置 |
更多信息,请参考PromptConfig属性。 |
|
TriggerConditions |
Map |
否 |
是 |
触发条件 |
更多信息,请参考TriggerConditions属性。 |
PromptConfig语法
"PromptConfig":{
"Type": String,
"CustomPrompt": String
}
PromptConfig属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
CustomPrompt |
String |
否 |
是 |
抽取指令 |
无 |
|
Type |
String |
否 |
是 |
插件类型。 |
无 |
TriggerConditions语法
"TriggerConditions":{
"MessageCountThreshold": Integer
}
TriggerConditions属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
MessageCountThreshold |
String |
否 |
是 |
消息数量阈值 |
无 |
ContextSelection语法
"ContextSelection":{
"Type": String,
"Value": String
}
ContextSelection属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
Type |
String |
否 |
是 |
插件类型。 |
无 |
|
Value |
String |
否 |
是 |
匹配值。 |
无 |
ModelService语法
"ModelService":{
"ModelName": String,
"ServiceId": String,
"TimeoutMillisecond": Integer
}
ModelService属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
ModelName |
String |
否 |
是 |
模型名称 |
无 |
|
ServiceId |
String |
否 |
是 |
服务 ID |
无 |
|
TimeoutMillisecond |
Integer |
否 |
是 |
超时时间 |
无 |
ToolReranking语法
"ToolReranking":{
"FallbackStrategy": String,
"FilteringMethod": String,
"ScoreThreshold": Number,
"TopNCount": Integer,
"ModelService": Map,
"TopKPercent": Number
}
ToolReranking属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
FallbackStrategy |
String |
否 |
是 |
回退策略 |
无 |
|
FilteringMethod |
String |
否 |
是 |
过滤方法 |
无 |
|
ModelService |
Map |
否 |
是 |
模型服务 |
更多信息,请参考ModelService属性。 |
|
ScoreThreshold |
Number |
否 |
是 |
分数阈值 |
无 |
|
TopKPercent |
Number |
否 |
是 |
前 K 百分比 |
无 |
|
TopNCount |
Integer |
否 |
是 |
前 N 个数量 |
无 |
EnableConditions语法
"EnableConditions":{
"ToolCountThreshold": Integer
}
EnableConditions属性
|
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
|
ToolCountThreshold |
Integer |
否 |
是 |
工具数量阈值 |
无 |
返回值
Fn::GetAtt
-
HttpApiId:HTTP API ID。
示例
场景 1 :创建一个HTTP协议的API。
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: 创建一个HTTP协议的API,适用于内部服务调用或开发测试。
en: Create an HTTP API for internal service calls or dev/test environments.
Parameters:
HttpApiName:
Type: String
Label:
zh-cn: API名称
en: API Name
Description:
zh-cn: HTTP API的名称,长度为1~64个字符。
en: The name of the HTTP API, 1 to 64 characters.
MinLength: 1
MaxLength: 64
AssociationProperty: AutoCompleteInput
AssociationPropertyMetadata:
Length: 5
Prefix: my-api-
CharacterClasses:
- Class: lowercase
min: 1
Default: my-api
Resources:
HttpApi:
Type: ALIYUN::APIG::HttpApi
Properties:
HttpApiName:
Ref: HttpApiName
Type: Http
Protocols:
- HTTP
BasePath: /
Outputs:
HttpApiId:
Label:
zh-cn: API ID
en: API ID
Value:
Fn::GetAtt:
- HttpApi
- HttpApiId{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "创建一个HTTP协议的API,适用于内部服务调用或开发测试。",
"en": "Create an HTTP API for internal service calls or dev/test environments."
},
"Parameters": {
"HttpApiName": {
"Type": "String",
"Label": {
"zh-cn": "API名称",
"en": "API Name"
},
"Description": {
"zh-cn": "HTTP API的名称,长度为1~64个字符。",
"en": "The name of the HTTP API, 1 to 64 characters."
},
"MinLength": 1,
"MaxLength": 64,
"AssociationProperty": "AutoCompleteInput",
"AssociationPropertyMetadata": {
"Length": 5,
"Prefix": "my-api-",
"CharacterClasses": [
{
"Class": "lowercase",
"min": 1
}
]
},
"Default": "my-api"
}
},
"Resources": {
"HttpApi": {
"Type": "ALIYUN::APIG::HttpApi",
"Properties": {
"HttpApiName": {
"Ref": "HttpApiName"
},
"Type": "Http",
"Protocols": [
"HTTP"
],
"BasePath": "/"
}
}
},
"Outputs": {
"HttpApiId": {
"Label": {
"zh-cn": "API ID",
"en": "API ID"
},
"Value": {
"Fn::GetAtt": [
"HttpApi",
"HttpApiId"
]
}
}
}
}场景 2 :创建支持HTTP和HTTPS双协议的RESTful API,配置版本化基础路径。
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: 创建REST类型API,支持HTTP和HTTPS双协议,配置版本化基础路径。
en: Create a RESTful API with both HTTP and HTTPS, with a versioned base path.
Parameters:
HttpApiName:
Type: String
Label:
zh-cn: API名称
en: API Name
Description:
zh-cn: RESTful API的名称,长度为1~64个字符。
en: The name of the RESTful API, 1 to 64 characters.
MinLength: 1
MaxLength: 64
AssociationProperty: AutoCompleteInput
AssociationPropertyMetadata:
Length: 5
Prefix: rest-api-
CharacterClasses:
- Class: lowercase
min: 1
Default: rest-api
BasePath:
Type: String
Label:
zh-cn: API基础路径
en: API Base Path
Description:
zh-cn: >-
API的基础路径,需以/开头。建议使用版本号作为路径前缀,
如/v1、/v2,便于API版本管理。
en: >-
The base path of the API, must start with /.
Using a version prefix like /v1, /v2 is recommended.
Default: /v1
AllowedValues:
- /v1
- /v2
- /api/v1
- /api/v2
Description:
Type: String
Label:
zh-cn: API描述
en: API Description
Description:
zh-cn: API的功能描述信息。
en: Functional description of the API.
Default: 生产环境RESTful API服务
MaxLength: 256
Resources:
RestApi:
Type: ALIYUN::APIG::HttpApi
Properties:
HttpApiName:
Ref: HttpApiName
Type: Rest
Protocols:
- HTTP
- HTTPS
BasePath:
Ref: BasePath
Description:
Ref: Description
Outputs:
HttpApiId:
Label:
zh-cn: API ID
en: API ID
Value:
Fn::GetAtt:
- RestApi
- HttpApiId{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "创建REST类型API,支持HTTP和HTTPS双协议,配置版本化基础路径。",
"en": "Create a RESTful API with both HTTP and HTTPS, with a versioned base path."
},
"Parameters": {
"HttpApiName": {
"Type": "String",
"Label": {
"zh-cn": "API名称",
"en": "API Name"
},
"Description": {
"zh-cn": "RESTful API的名称,长度为1~64个字符。",
"en": "The name of the RESTful API, 1 to 64 characters."
},
"MinLength": 1,
"MaxLength": 64,
"AssociationProperty": "AutoCompleteInput",
"AssociationPropertyMetadata": {
"Length": 5,
"Prefix": "rest-api-",
"CharacterClasses": [
{
"Class": "lowercase",
"min": 1
}
]
},
"Default": "rest-api"
},
"BasePath": {
"Type": "String",
"Label": {
"zh-cn": "API基础路径",
"en": "API Base Path"
},
"Description": {
"zh-cn": "API的基础路径,需以/开头。建议使用版本号作为路径前缀,如/v1、/v2,便于API版本管理。",
"en": "The base path of the API, must start with /. Using a version prefix like /v1, /v2 is recommended."
},
"Default": "/v1",
"AllowedValues": [
"/v1",
"/v2",
"/api/v1",
"/api/v2"
]
},
"Description": {
"Type": "String",
"Label": {
"zh-cn": "API描述",
"en": "API Description"
},
"Description": {
"zh-cn": "API的功能描述信息。",
"en": "Functional description of the API."
},
"Default": "生产环境RESTful API服务",
"MaxLength": 256
}
},
"Resources": {
"RestApi": {
"Type": "ALIYUN::APIG::HttpApi",
"Properties": {
"HttpApiName": {
"Ref": "HttpApiName"
},
"Type": "Rest",
"Protocols": [
"HTTP",
"HTTPS"
],
"BasePath": {
"Ref": "BasePath"
},
"Description": {
"Ref": "Description"
}
}
}
},
"Outputs": {
"HttpApiId": {
"Label": {
"zh-cn": "API ID",
"en": "API ID"
},
"Value": {
"Fn::GetAtt": [
"RestApi",
"HttpApiId"
]
}
}
}
}场景 3 :创建WebSocket API并配置HTTPS安全域名,实现实时通信服务。
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: 创建WebSocket API并配置HTTPS安全域名,实现安全的实时通信服务。
en: Create a WebSocket API with an HTTPS domain for secure real-time communication.
Parameters:
HttpApiName:
Type: String
Label:
zh-cn: API名称
en: API Name
Description:
zh-cn: WebSocket API的名称,长度为1~64个字符。
en: The name of the WebSocket API, 1 to 64 characters.
MinLength: 1
MaxLength: 64
AssociationProperty: AutoCompleteInput
AssociationPropertyMetadata:
Length: 5
Prefix: ws-api-
CharacterClasses:
- Class: lowercase
min: 1
Default: ws-api
BasePath:
Type: String
Label:
zh-cn: WebSocket基础路径
en: WebSocket Base Path
Description:
zh-cn: WebSocket API的基础路径,需以/开头。
en: The base path of the WebSocket API, must start with /.
Default: /ws
DomainName:
Type: String
Label:
zh-cn: 域名
en: Domain Name
Description:
zh-cn: >-
WebSocket服务的域名,例如ws.example.com。
需已完成域名备案和DNS解析。
en: >-
The domain name for WebSocket service, e.g. ws.example.com.
DNS resolution and ICP filing must be completed.
AllowedPattern: '^[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+$'
CertIdentifier:
Type: String
Label:
zh-cn: SSL证书标识
en: SSL Certificate Identifier
Description:
zh-cn: SSL证书的唯一标识,可在SSL证书服务控制台获取。证书需与域名匹配。
en: >-
The unique identifier of the SSL certificate.
The certificate must match the domain name.
Resources:
WebSocketApi:
Type: ALIYUN::APIG::HttpApi
Properties:
HttpApiName:
Ref: HttpApiName
Type: WebSocket
Protocols:
- HTTPS
BasePath:
Ref: BasePath
Description:
Fn::Sub: WebSocket实时通信API - ${HttpApiName}
Domain:
Type: ALIYUN::APIG::Domain
Properties:
DomainName:
Ref: DomainName
Protocol: HTTPS
CertIdentifier:
Ref: CertIdentifier
ForceHttps: true
TlsMin: TLS 1.2
TlsMax: TLS 1.3
Http2Option: Open
Outputs:
HttpApiId:
Label:
zh-cn: API ID
en: API ID
Value:
Fn::GetAtt:
- WebSocketApi
- HttpApiId
DomainId:
Label:
zh-cn: 域名ID
en: Domain ID
Value:
Fn::GetAtt:
- Domain
- DomainId
DomainName:
Label:
zh-cn: 域名
en: Domain Name
Value:
Fn::GetAtt:
- Domain
- DomainName{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "创建WebSocket API并配置HTTPS安全域名,实现安全的实时通信服务。",
"en": "Create a WebSocket API with an HTTPS domain for secure real-time communication."
},
"Parameters": {
"HttpApiName": {
"Type": "String",
"Label": {
"zh-cn": "API名称",
"en": "API Name"
},
"Description": {
"zh-cn": "WebSocket API的名称,长度为1~64个字符。",
"en": "The name of the WebSocket API, 1 to 64 characters."
},
"MinLength": 1,
"MaxLength": 64,
"AssociationProperty": "AutoCompleteInput",
"AssociationPropertyMetadata": {
"Length": 5,
"Prefix": "ws-api-",
"CharacterClasses": [
{
"Class": "lowercase",
"min": 1
}
]
},
"Default": "ws-api"
},
"BasePath": {
"Type": "String",
"Label": {
"zh-cn": "WebSocket基础路径",
"en": "WebSocket Base Path"
},
"Description": {
"zh-cn": "WebSocket API的基础路径,需以/开头。",
"en": "The base path of the WebSocket API, must start with /."
},
"Default": "/ws"
},
"DomainName": {
"Type": "String",
"Label": {
"zh-cn": "域名",
"en": "Domain Name"
},
"Description": {
"zh-cn": "WebSocket服务的域名,例如ws.example.com。需已完成域名备案和DNS解析。",
"en": "The domain name for WebSocket service, e.g. ws.example.com. DNS resolution and ICP filing must be completed."
},
"AllowedPattern": "^[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+$"
},
"CertIdentifier": {
"Type": "String",
"Label": {
"zh-cn": "SSL证书标识",
"en": "SSL Certificate Identifier"
},
"Description": {
"zh-cn": "SSL证书的唯一标识,可在SSL证书服务控制台获取。证书需与域名匹配。",
"en": "The unique identifier of the SSL certificate. The certificate must match the domain name."
}
}
},
"Resources": {
"WebSocketApi": {
"Type": "ALIYUN::APIG::HttpApi",
"Properties": {
"HttpApiName": {
"Ref": "HttpApiName"
},
"Type": "WebSocket",
"Protocols": [
"HTTPS"
],
"BasePath": {
"Ref": "BasePath"
},
"Description": {
"Fn::Sub": "WebSocket实时通信API - ${HttpApiName}"
}
}
},
"Domain": {
"Type": "ALIYUN::APIG::Domain",
"Properties": {
"DomainName": {
"Ref": "DomainName"
},
"Protocol": "HTTPS",
"CertIdentifier": {
"Ref": "CertIdentifier"
},
"ForceHttps": true,
"TlsMin": "TLS 1.2",
"TlsMax": "TLS 1.3",
"Http2Option": "Open"
}
}
},
"Outputs": {
"HttpApiId": {
"Label": {
"zh-cn": "API ID",
"en": "API ID"
},
"Value": {
"Fn::GetAtt": [
"WebSocketApi",
"HttpApiId"
]
}
},
"DomainId": {
"Label": {
"zh-cn": "域名ID",
"en": "Domain ID"
},
"Value": {
"Fn::GetAtt": [
"Domain",
"DomainId"
]
}
},
"DomainName": {
"Label": {
"zh-cn": "域名",
"en": "Domain Name"
},
"Value": {
"Fn::GetAtt": [
"Domain",
"DomainName"
]
}
}
}
}