华为云用户手册

  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 size Integer 本次返回的列表长度 total Long 满足条件的记录数 groups Array of ApiGroupInfo objects 分组列表 表5 ApiGroupInfo 参数 参数类型 描述 id String 编号 name String API分组名称 status Integer 状态 1: 有效 2: 锁定 sl_domain String 系统默认分配的子 域名 register_time String 创建时间 update_time String 最近修改时间 on_sell_status Integer 是否已上架云市场: 1:已上架 2:未上架 3:审核中 ROMA Connect暂未对接云市场,此字段默认返回2 url_domains Array of UrlDomain objects 分组上绑定的独立域名列表 sl_domain_access_enabled Boolean 调试域名是否可以访问,true表示可以访问,false表示禁止访问 sl_domains Array of strings 系统默认分配的子域名列表 remark String 描述 call_limits Integer 流控时长内分组下的API的总访问次数限制,默认不限,请根据服务的负载能力自行设置 暂不支持 time_interval Integer 流控时长 暂不支持 time_unit String 流控的时间单位 暂不支持 is_default Integer 是否为默认分组 version String 分组版本 V1:全局分组 V2:应用级分组 roma_app_id String 分组归属的集成应用编号。 分组版本V2时必填。 roma_app_name String 分组归属的集成应用名称 表6 UrlDomain 参数 参数类型 描述 id String 域名编号 domain String 访问域名 cname_status Integer 域名cname状态: 1:未解析 2:解析中 3:解析成功 4:解析失败 ssl_id String SSL证书编号 ssl_name String SSL证书名称 min_ssl_version String 最小ssl协议版本号。支持TLSv1.1或TLSv1.2 verified_client_certificate_enabled Boolean 是否开启客户端证书校验。只有绑定证书时,该参数才生效。当绑定证书存在trusted_root_ca时,默认开启;当绑定证书不存在trusted_root_ca时,默认关闭。 is_has_trusted_root_ca Boolean 是否存在信任的根证书CA。当绑定证书存在trusted_root_ca时为true。 ssl_infos Array of SslInfo objects SSL证书列表 表7 SslInfo 参数 参数类型 描述 ssl_id String SSL证书编号 ssl_name String SSL证书名称 algorithm_type String 证书算法类型: RSA ECC SM2 type String 证书可见范围: instance:当前实例 global:全局 状态码: 400 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 403 表10 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 404 表11 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表12 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 restrict_cidrs Array of strings 受限的IP网段的CIDR列表。 resource_subnet_cidr String 资源租户的IP网段的CIDR。 状态码: 401 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 403 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 404 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应示例 状态码: 200 OK { "restrict_cidrs" : [ "127.0.0.1/32", "192.168.0.1/24" ], "resource_subnet_cidr" : "192.168.0.1/24" } 状态码: 401 Unauthorized { "error_code" : "APIC.7102", "error_msg" : "Incorrect token or token resolution failed" } 状态码: 403 Forbidden { "error_code" : "APIC.7106", "error_msg" : "No permissions to request for the method" } 状态码: 404 Not Found { "error_code" : "APIC.7302", "error_msg" : "Instance not found" } 状态码: 500 Internal Server Error { "error_code" : "APIC.9000", "error_msg" : "Failed to request internal service" }
  • 响应示例 状态码: 200 OK { "permissions" : [ "read", "access", "delete", "modify" ], "id" : 120671, "product_serial" : "Dd1bRt122894", "app_id" : "a1503e51-46f7-4d23-8617-7cb2d28dde98", "name" : "pro-opcua", "manufacturer_id" : "pro-opcua", "manufacturer_name" : "pro-opcua", "model" : "pro-opcua", "product_type" : 0, "description" : "opcua product", "protocol_type" : 4, "device_type" : "default", "version" : "version", "created_datetime" : 1607481372416, "last_updated_datetime" : 1607481372416, "app_name" : "app-link", "data_format" : 0, "created_user" : { "user_id" : "6546435432432", "user_name" : "user1" }, "last_updated_user" : { "user_id" : "6546435432432", "user_name" : "user1" } } 状态码: 400 Bad Request { "error_code" : "SCB.00000000", "error_msg" : "Parameter is not valid for operation [romalink.link-product.update]. Parameter is [product_id]. Processor is [path].", "request_id" : "cb39e78a-afd3-4e04-901d-70468b1c23dc-1619602712496-cnnorth7a-P-romalink-service01" } 状态码: 404 Not Found { "error_code" : "ROMA.00110006", "error_msg" : "The resource does not exist. Check whether the resource ID ff38023c-0854-4779-847d-72528e1f5da5 is correct.", "request_id" : "72b07918-f6a2-4721-81bf-f3fd5486025e-1619663576836-cnnorth7a-P-romalink-service01" } 状态码: 500 Internal Server Error { "error_code" : "ROMA.00110002", "error_msg" : "The instance does not exist. project_id: 397cd10b30544c588b2f4a56d83856c4, instance_id: f3bb386a-23ec-47aa-9943-4c60ac658611", "request_id" : "c8c06d0a-be92-4fdf-9d10-bc20131ab158-1619593104919-cnnorth7a-P-romalink-service01" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 permissions Array of strings 权限。 id Integer 产品ID product_serial String 产品唯一序列(系统唯一值,用于MQS的TOPIC中标记产品)。 app_id String 应用ID。 name String 产品名称,创建产品时租户内唯一,长度最大64,仅支持中文、英文字母、数字、下划线和中划线。 manufacturer_id String 产品供应商ID。 manufacturer_name String 厂商名称。 model String 产品型号。 product_type Integer 产品类型,0-普通产品(不支持子设备) 1-网关产品。 description String 产品描述,长度0-200。 protocol_type Integer 产品的协议类型,0-mqtt 1-CoAP 2-modbus 4-opcua 5-扩展协议。 device_type String 产品的设备类型(默认Default)。 version String 产品版本。 created_user CreatedUser object 创建时的用户。 last_updated_user LastUpdatedUser object 最后更新时的用户。 created_datetime Long 创建时间,timestamp(ms),使用UTC时区。 app_name String 应用名称。 data_format Integer data_format 0-JSON 1-USER_DEFINED 表5 CreatedUser 参数 参数类型 描述 user_id String 用户ID(保留字段,未使用)。 user_name String 用户名。 表6 LastUpdatedUser 参数 参数类型 描述 user_id String 用户ID(保留字段,未使用)。 user_name String 用户名。 状态码: 400 表7 响应Body参数 参数 参数类型 描述 error_code String 系统错误码,针对4xx和5xx类HTTP错误码的详细错误码。 error_msg String 错误描述。 request_id String 消息ID。 状态码: 404 表8 响应Body参数 参数 参数类型 描述 error_code String 系统错误码,针对4xx和5xx类HTTP错误码的详细错误码。 error_msg String 错误描述。 request_id String 消息ID。 状态码: 500 表9 响应Body参数 参数 参数类型 描述 error_code String 系统错误码,针对4xx和5xx类HTTP错误码的详细错误码。 error_msg String 错误描述。 request_id String 消息ID。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用 IAM 服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 name 是 String 产品名称,创建产品时租户内唯一,长度1-64,仅支持中文、英文字母、数字、下划线和中划线。 description 否 String 产品描述,长度0-200。 manufacturer_id 是 String 产品供应商ID,支持英文大小写、数字、下划线和中划线,长度2-50。 manufacturer_name 是 String 厂商名称,支持长度2-64。 model 是 String 产品型号,支持英文大小写、数字、下划线、中划线和空格(首尾空格会被忽略),长度2-50。 device_type 是 String 产品的设备类型(默认Default Type)。 version 否 String 模型版本。
  • 响应示例 状态码: 200 OK { "app_quota_id" : "c900c5612dbe451bb43cbcc49cfaf2f3", "call_limits" : 1000, "create_time" : "2020-09-19T07:27:47Z", "name" : "ClientQuota_demo", "reset_time" : "2020-09-20 00:00:00", "time_interval" : 1, "time_unit" : "DAY" } 状态码: 400 Bad Request { "error_code" : "APIG.3325", "error_msg" : "The API quota name already exists" } 状态码: 401 Unauthorized { "error_code" : "APIG.1002", "error_msg" : "Incorrect token or token resolution failed" } 状态码: 403 Forbidden { "error_code" : "APIG.1005", "error_msg" : "No permissions to request this method" } 状态码: 404 Not Found { "error_code" : "APIG.3093", "error_msg" : "App quota c900c5612dbe451bb43cbcc49cfaf2f3 does not exist" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 app_quota_id String 凭据配额编号 name String 配额名称。支持汉字,英文,数字,下划线,且只能以英文和汉字开头,3-255字符 call_limits Integer 凭据配额的访问次数限制 time_unit String 限定时间单位:SECOND:秒、MINUTE:分、HOUR:时、DAY:天 time_interval Integer 配额的限定时间值 remark String 参数说明和描述 reset_time String 首次配额重置时间点,不配置默认为首次调用时间计算 create_time String 创建时间 bound_app_num Integer 配额策略已绑定应用数量 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 403 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 404 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应示例 状态码: 200 OK { "plugin_id" : "5b729aa252764739b3s237ef0d66dc63", "plugin_name" : "跨域插件", "plugin_type" : "cors", "plugin_scope" : "global", "plugin_content" : "{\\\"allow_origin\\\":\\\"*\\\",\\\"allow_methods\\\":\\\"GET,POST,PUT,DELETE,HEAD,PATCH\\\",\\\"allow_headers\\\":\\\"Content-Type,Accept,Accept-Ranges,Cache-Control\\\",\\\"expose_headers\\\":\\\"X-Request-Id,X-Apig-Latency\\\",\\\"max_age\\\":600,\\\"allow_credentials\\\":false}", "remark" : "CORS跨域资源访问", "create_time" : "2022-11-02T12:31:23.353Z", "update_time" : "2022-11-02T12:31:23.353Z" } { "plugin_id" : "8a688dce7d0c45cf84edac3d7b071769", "plugin_name" : "HTTP响应头插件", "plugin_type" : "set_resp_headers", "plugin_scope" : "global", "plugin_content" : "{\\\"response_headers\\\":[{\\\"name\\\":\\\"x-demo\\\",\\\"value_type\\\":\\\"custom_value\\\",\\\"value\\\":\\\"sss\\\",\\\"action\\\":\\\"append\\\"}]}", "remark" : "HTTP响应头管理", "create_time" : "2022-11-02T12:31:23.353Z", "update_time" : "2022-11-02T12:31:23.353Z" } { "plugin_id" : "9642ff2b9a86481689ca9d28babcfd7f", "plugin_name" : "流控插件", "plugin_type" : "rate_limit", "plugin_scope" : "global", "plugin_content" : "{\\\"scope\\\":\\\"basic\\\",\\\"default_time_unit\\\":\\\"minute\\\",\\\"default_interval\\\":1,\\\"api_limit\\\":50,\\\"app_limit\\\":0,\\\"user_limit\\\":0,\\\"ip_limit\\\":0,\\\"algorithm\\\":\\\"counter\\\",\\\"specials\\\":[],\\\"parameters\\\":[],\\\"rules\\\":[]}", "remark" : "流量控制", "create_time" : "2022-11-02T12:31:23.353Z", "update_time" : "2022-11-02T12:31:23.353Z" } { "plugin_id" : "92284ece6ec7466da2c2ac2416f46d5d", "plugin_name" : "KAFKA日志插件", "plugin_type" : "kafka_log", "plugin_scope" : "app", "plugin_content" : "{\\\"broker_list\\\":[\\\"0.0.0.0:11\\\"],\\\"topic\\\":\\\"topic\\\",\\\"key\\\":\\\"\\\",\\\"max_retry_count\\\":0,\\\"retry_backoff\\\":1,\\\"sasl_config\\\":{\\\"security_protocol\\\":\\\"PLAINTEXT\\\",\\\"sasl_mechanisms\\\":\\\"PLAIN\\\",\\\"sasl_username\\\":\\\"\\\",\\\"sasl_password\\\":\\\"\\\",\\\"ssl_ca_content\\\":\\\"\\\"},\\\"meta_config\\\":{\\\"system\\\":{\\\"start_time\\\":true,\\\"request_id\\\":true,\\\"client_ip\\\":true,\\\"api_id\\\":false,\\\"user_name\\\":false,\\\"app_id\\\":false,\\\"access_model1\\\":false,\\\"request_time\\\":true,\\\"http_status\\\":true,\\\"server_protocol\\\":false,\\\"scheme\\\":true,\\\"request_method\\\":true,\\\"host\\\":false,\\\"api_uri_mode\\\":false,\\\"uri\\\":false,\\\"request_size\\\":false,\\\"response_size\\\":false,\\\"upstream_uri\\\":false,\\\"upstream_addr\\\":true,\\\"upstream_status\\\":true,\\\"upstream_connect_time\\\":false,\\\"upstream_header_time\\\":false,\\\"upstream_response_time\\\":true,\\\"all_upstream_response_time\\\":false,\\\"region_id\\\":false,\\\"auth_type\\\":false,\\\"http_x_forwarded_for\\\":true,\\\"http_user_agent\\\":true,\\\"error_type\\\":true,\\\"access_model2\\\":false,\\\"inner_time\\\":false,\\\"proxy_protocol_vni\\\":false,\\\"proxy_protocol_vpce_id\\\":false,\\\"proxy_protocol_addr\\\":false,\\\"body_bytes_sent\\\":false,\\\"api_name\\\":false,\\\"app_name\\\":false,\\\"provider_app_id\\\":false,\\\"provider_app_name\\\":false,\\\"custom_data_log01\\\":false,\\\"custom_data_log02\\\":false,\\\"custom_data_log03\\\":false,\\\"custom_data_log04\\\":false,\\\"custom_data_log05\\\":false,\\\"custom_data_log06\\\":false,\\\"custom_data_log07\\\":false,\\\"custom_data_log08\\\":false,\\\"custom_data_log09\\\":false,\\\"custom_data_log10\\\":false,\\\"response_source\\\":false},\\\"call_data\\\":{\\\"log_request_header\\\":false,\\\"request_header_filter\\\":\\\"\\\",\\\"log_request_query_string\\\":false,\\\"request_query_string_filter\\\":\\\"\\\",\\\"log_request_body\\\":false,\\\"log_response_header\\\":false,\\\"response_header_filter\\\":\\\"\\\",\\\"log_response_body\\\":false,\\\"custom_authorizer\\\":{\\\"frontend\\\":[],\\\"backend\\\":[]}}}}", "remark" : "KAFKA日志推送", "roma_app_id" : "df003efc-1ce7-41ef-a45a-b89dc431cb2d", "create_time" : "2022-11-02T12:31:23.353Z", "update_time" : "2022-11-02T12:31:23.353Z" } { "plugin_id" : "8b5253ed723c4a878e7b8532c08763b4", "plugin_name" : "断路器插件", "plugin_type" : "breaker", "plugin_scope" : "app", "plugin_content" : "{\\\"breaker_condition\\\":{\\\"breaker_type\\\":\\\"timeout\\\",\\\"breaker_mode\\\":\\\"counter\\\",\\\"unhealthy_condition\\\":\\\"\\\",\\\"unhealthy_threshold\\\":30,\\\"min_call_threshold\\\":20,\\\"unhealthy_percentage\\\":51,\\\"time_window\\\":15,\\\"open_breaker_time\\\":15},\\\"downgrade_default\\\":null,\\\"downgrade_parameters\\\":null,\\\"downgrade_rules\\\":null,\\\"scope\\\":\\\"basic\\\"}", "remark" : "断路器", "roma_app_id" : "df003efc-1ce7-41ef-a45a-b89dc431cb2d", "create_time" : "2022-11-02T12:31:23.353Z", "update_time" : "2022-11-02T12:31:23.353Z" } { "plugin_id" : "235d97683439437585aff06020059720", "plugin_name" : "第三方认证插件", "plugin_type" : "third_auth", "plugin_scope" : "global", "plugin_content" : "{\\\"auth_request\\\":{\\\"method\\\":\\\"POST\\\",\\\"protocol\\\":\\\"HTTP\\\",\\\"url_domain\\\":\\\"xxx.xxx.xxx.xxx:1234\\\",\\\"path\\\":\\\"/check\\\",\\\"timeout\\\":10,\\\"vpc_channel_enabled\\\":false,\\\"vpc_channel_info\\\":null},\\\"identities\\\":{\\\"headers\\\":[{\\\"name\\\":\\\"token\\\"}],\\\"queries\\\":null},\\\"carry_body\\\":{\\\"enabled\\\":true,\\\"max_body_size\\\":10000},\\\"carry_path_enabled\\\":false,\\\"return_resp_body_enabled\\\":true,\\\"carry_resp_headers\\\":[\\\"x-message-result\\\"],\\\"simple_auth_mode_enabled\\\":false,\\\"match_auth\\\":{\\\"key\\\":\\\"x-message-result\\\",\\\"value\\\":\\\"success\\\"},\\\"parameters\\\":[{\\\"type\\\":\\\"path\\\",\\\"name\\\":\\\"reqPath\\\",\\\"value\\\":\\\"reqPath\\\"},{\\\"type\\\":\\\"method\\\",\\\"name\\\":\\\"method\\\",\\\"value\\\":\\\"method\\\"},{\\\"type\\\":\\\"header\\\",\\\"name\\\":\\\"Host\\\",\\\"value\\\":\\\"Host\\\"}],\\\"rules\\\":[{\\\"rule_name\\\":\\\"allow2\\\",\\\"match_regex\\\":\\\"[\\\\\\\"OR\\\\\\\", [\\\\\\\"reqPath\\\\\\\", \\\\\\\"~~\\\\\\\", \\\\\\\"/xxl-job-admin/*\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/app/leave/infor/v1/addLeaveLnfor\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/v1/charge/home/modifyChargeSync\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/app/mweb/campaign/api/v1/getActivityConfig\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/mp/vehicle/owner/home\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/app/mweb/campaign/api/v1/getTime\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/c-showroom-service/v1/vehicleDetails/upload\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"~~\\\\\\\", \\\\\\\"/operation-charging-bff/carOwnerRights/certificate/*\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"~~\\\\\\\", \\\\\\\"/api/2c/v1/sales-bff/*\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/2c/v1/vehicleDetails/upload\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"~~\\\\\\\", \\\\\\\"/operation-admin/*\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/app/settings/api/v1/receiveClk\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/vehicle/relative/yTSendVehicleControl.json\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/appoint/getAppointmentByTestDrive\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/evd/callBackEvdPay\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/evd/callBackEvdOrder\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/evd/getUserToken\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/evd/callBackEvdCoupon\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/task/busTriggerTaskEvent.json\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/datacenter-log-center/api/trackApi/commonAdd.json\\\\\\\"]]\\\"}],\\\"rule_type\\\":\\\"allow\\\",\\\"rule_enabled\\\":true,\\\"custom_forbid_limit\\\":100,\\\"auth_downgrade_enable\\\":false}", "remark" : "这是一个包含规则表达式黑名单的第三方认证插件", "create_time" : "2023-05-06T06:54:59.296181801Z", "update_time" : "2023-05-06T07:07:18.369017889Z" } { "plugin_id" : "d5bf25cf31e04e888907b8ad72563f45", "plugin_name" : "响应缓存插件", "plugin_type" : "proxy_cache", "plugin_scope" : "global", "plugin_content" : "{\\\"cache_key\\\": {\\\"system_params\\\": [\\\"$context.sourceIp\\\",\\\"$context.requestId\\\"],\\\"parameters\\\": [\\\"demo_parameter\\\"],\\\"headers\\\": [\\\"demo_header\\\"]},\\\"cache_http_status_and_ttl\\\": [{\\\"http_status\\\": [200],\\\"ttl\\\": 300},{\\\"http_status\\\": [300],\\\"ttl\\\": 200}],\\\"client_cache_control\\\": {\\\"mode\\\": \\\"apps\\\",\\\"datas\\\": [\\\"demo_app_id_1,demo_app_id_2\\\"]},\\\"cacheable_headers\\\": [\\\"demo_cacheable_headers_1,demo_cacheable_headers_2\\\"]}", "remark" : "这是响应缓存插件", "create_time" : "2024-03-18T12:31:23.353Z", "update_time" : "2024-03-18T12:31:23.353Z" } { "plugin_id" : "d5bf25cf31e04e888907b8ad72563f45", "plugin_name" : "请求镜像插件", "plugin_type" : "proxy_mirror", "plugin_scope" : "global", "plugin_content" : "{\\\"protocol\\\": \\\"http\\\",\\\"host\\\": \\\"xxx.xxx.xxx.xxx:1234\\\",\\\"path\\\": \\\"/test\\\",\\\"path_concat_mode\\\": \\\"replace\\\",\\\"sample_ratio\\\": 1,\\\"timeout\\\": 5000,\\\"mirror_request_body_enabled\\\": true}", "remark" : "这是请求镜像插件", "create_time" : "2024-03-18T12:31:23.353Z", "update_time" : "2024-03-18T12:31:23.353Z" } 状态码: 400 Bad Request { "error_code" : "APIG.3326", "error_msg" : "The plugin name already exists" } 状态码: 401 Unauthorized { "error_code" : "APIG.1002", "error_msg" : "Incorrect token or token resolution failed" } 状态码: 403 Forbidden { "error_code" : "APIG.1005", "error_msg" : "No permissions to request this method" } 状态码: 404 Not Found { "error_code" : "APIG.3068", "error_msg" : "Plugin b294018ee0554156a875b3513e02e5b9 does not exist" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
  • 请求示例 修改指定跨域资源共享插件的内容 { "plugin_name" : "跨域插件", "plugin_type" : "cors", "plugin_scope" : "global", "plugin_content" : "{\\\"allow_origin\\\":\\\"*\\\",\\\"allow_methods\\\":\\\"GET,POST,PUT,DELETE,HEAD,PATCH\\\",\\\"allow_headers\\\":\\\"Content-Type,Accept,Accept-Ranges,Cache-Control\\\",\\\"expose_headers\\\":\\\"X-Request-Id,X-Apig-Latency\\\",\\\"max_age\\\":600,\\\"allow_credentials\\\":false}", "remark" : "CORS跨域资源访问" } 修改指定HTTP响应头插件的内容 { "plugin_name" : "HTTP响应头插件", "plugin_type" : "set_resp_headers", "plugin_scope" : "global", "plugin_content" : "{\\\"response_headers\\\":[{\\\"name\\\":\\\"x-demo\\\",\\\"value_type\\\":\\\"custom_value\\\",\\\"value\\\":\\\"sss\\\",\\\"action\\\":\\\"append\\\"}]}", "remark" : "HTTP响应头管理" } 修改指定流控插件的内容 { "plugin_name" : "流控插件", "plugin_type" : "rate_limit", "plugin_scope" : "global", "plugin_content" : "{\\\"scope\\\":\\\"basic\\\",\\\"default_time_unit\\\":\\\"minute\\\",\\\"default_interval\\\":1,\\\"api_limit\\\":50,\\\"app_limit\\\":0,\\\"user_limit\\\":0,\\\"ip_limit\\\":0,\\\"algorithm\\\":\\\"counter\\\",\\\"specials\\\":[],\\\"parameters\\\":[],\\\"rules\\\":[]}", "remark" : "流量控制" } 修改指定Kafka日志推送插件的内容 { "plugin_name" : "KAFKA日志插件", "plugin_type" : "kafka_log", "plugin_scope" : "app", "plugin_content" : "{\\\"broker_list\\\":[\\\"0.0.0.0:11\\\"],\\\"topic\\\":\\\"topic\\\",\\\"key\\\":\\\"\\\",\\\"max_retry_count\\\":0,\\\"retry_backoff\\\":1,\\\"sasl_config\\\":{\\\"security_protocol\\\":\\\"PLAINTEXT\\\",\\\"sasl_mechanisms\\\":\\\"PLAIN\\\",\\\"sasl_username\\\":\\\"\\\",\\\"sasl_password\\\":\\\"\\\",\\\"ssl_ca_content\\\":\\\"\\\"},\\\"meta_config\\\":{\\\"system\\\":{\\\"start_time\\\":true,\\\"request_id\\\":true,\\\"client_ip\\\":true,\\\"api_id\\\":false,\\\"user_name\\\":false,\\\"app_id\\\":false,\\\"access_model1\\\":false,\\\"request_time\\\":true,\\\"http_status\\\":true,\\\"server_protocol\\\":false,\\\"scheme\\\":true,\\\"request_method\\\":true,\\\"host\\\":false,\\\"api_uri_mode\\\":false,\\\"uri\\\":false,\\\"request_size\\\":false,\\\"response_size\\\":false,\\\"upstream_uri\\\":false,\\\"upstream_addr\\\":true,\\\"upstream_status\\\":true,\\\"upstream_connect_time\\\":false,\\\"upstream_header_time\\\":false,\\\"upstream_response_time\\\":true,\\\"all_upstream_response_time\\\":false,\\\"region_id\\\":false,\\\"auth_type\\\":false,\\\"http_x_forwarded_for\\\":true,\\\"http_user_agent\\\":true,\\\"error_type\\\":true,\\\"access_model2\\\":false,\\\"inner_time\\\":false,\\\"proxy_protocol_vni\\\":false,\\\"proxy_protocol_vpce_id\\\":false,\\\"proxy_protocol_addr\\\":false,\\\"body_bytes_sent\\\":false,\\\"api_name\\\":false,\\\"app_name\\\":false,\\\"provider_app_id\\\":false,\\\"provider_app_name\\\":false,\\\"custom_data_log01\\\":false,\\\"custom_data_log02\\\":false,\\\"custom_data_log03\\\":false,\\\"custom_data_log04\\\":false,\\\"custom_data_log05\\\":false,\\\"custom_data_log06\\\":false,\\\"custom_data_log07\\\":false,\\\"custom_data_log08\\\":false,\\\"custom_data_log09\\\":false,\\\"custom_data_log10\\\":false,\\\"response_source\\\":false},\\\"call_data\\\":{\\\"log_request_header\\\":false,\\\"request_header_filter\\\":\\\"\\\",\\\"log_request_query_string\\\":false,\\\"request_query_string_filter\\\":\\\"\\\",\\\"log_request_body\\\":false,\\\"log_response_header\\\":false,\\\"response_header_filter\\\":\\\"\\\",\\\"log_response_body\\\":false,\\\"custom_authorizer\\\":{\\\"frontend\\\":[],\\\"backend\\\":[]}}}}", "remark" : "KAFKA日志推送", "roma_app_id" : "df003efc-1ce7-41ef-a45a-b89dc431cb2d" } 修改指定断路器插件的内容 { "plugin_name" : "断路器插件", "plugin_type" : "breaker", "plugin_scope" : "app", "plugin_content" : "{\\\"breaker_condition\\\":{\\\"breaker_type\\\":\\\"timeout\\\",\\\"breaker_mode\\\":\\\"counter\\\",\\\"unhealthy_condition\\\":\\\"\\\",\\\"unhealthy_threshold\\\":30,\\\"min_call_threshold\\\":20,\\\"unhealthy_percentage\\\":51,\\\"time_window\\\":15,\\\"open_breaker_time\\\":15},\\\"downgrade_default\\\":null,\\\"downgrade_parameters\\\":null,\\\"downgrade_rules\\\":null,\\\"scope\\\":\\\"basic\\\"}", "remark" : "断路器", "roma_app_id" : "df003efc-1ce7-41ef-a45a-b89dc431cb2d" } 修改指定第三方认证插件的内容 { "plugin_name" : "第三方认证插件", "remark" : "这是一个包含规则表达式黑名单的第三方认证插件", "plugin_type" : "third_auth", "plugin_scope" : "global", "plugin_content" : "{\\\"auth_request\\\":{\\\"method\\\":\\\"POST\\\",\\\"protocol\\\":\\\"HTTP\\\",\\\"url_domain\\\":\\\"xxx.xxx.xxx.xxx:1234\\\",\\\"timeout\\\":10,\\\"path\\\":\\\"/check\\\",\\\"vpc_channel_enabled\\\":false,\\\"vpc_channel_info\\\":{\\\"vpc_proxy_host\\\":\\\"abc.com\\\",\\\"vpc_id\\\":\\\"3c113f40a54a40369ceb1eb1409a32ee\\\"}},\\\"identities\\\":{\\\"headers\\\":[{\\\"name\\\":\\\"token\\\"}],\\\"query\\\":[{\\\"name\\\":\\\"user\\\"}]},\\\"carry_body\\\":{\\\"enabled\\\":true,\\\"max_body_size\\\":10000},\\\"carry_path_enabled\\\":false,\\\"return_resp_body_enabled\\\":true,\\\"carry_resp_headers\\\":[\\\"x-message-result\\\"],\\\"simple_auth_mode_enabled\\\":false,\\\"match_auth\\\":{\\\"key\\\":\\\"x-message-result\\\",\\\"value\\\":\\\"success\\\"},\\\"rule_enabled\\\":true,\\\"rule_type\\\":\\\"deny\\\",\\\"parameters\\\":[{\\\"value\\\":\\\"reqPath\\\",\\\"type\\\":\\\"path\\\",\\\"name\\\":\\\"reqPath\\\"},{\\\"value\\\":\\\"method\\\",\\\"type\\\":\\\"method\\\",\\\"name\\\":\\\"method\\\"},{\\\"value\\\":\\\"Host\\\",\\\"type\\\":\\\"header\\\",\\\"name\\\":\\\"Host\\\"}],\\\"rules\\\":[{\\\"match_regex\\\": \\\"[\\\\\\\"OR\\\\\\\", [\\\\\\\"reqPath\\\\\\\", \\\\\\\"~~\\\\\\\", \\\\\\\"/xxl-job-admin/*\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/app/leave/infor/v1/addLeaveLnfor\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/v1/charge/home/modifyChargeSync\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/app/mweb/campaign/api/v1/getActivityConfig\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/mp/vehicle/owner/home\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/app/mweb/campaign/api/v1/getTime\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/c-showroom-service/v1/vehicleDetails/upload\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"~~\\\\\\\", \\\\\\\"/operation-charging-bff/carOwnerRights/certificate/*\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"~~\\\\\\\", \\\\\\\"/api/2c/v1/sales-bff/*\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/2c/v1/vehicleDetails/upload\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"~~\\\\\\\", \\\\\\\"/operation-admin/*\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/app/settings/api/v1/receiveClk\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/vehicle/relative/yTSendVehicleControl.json\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/appoint/getAppointmentByTestDrive\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/evd/callBackEvdPay\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/evd/callBackEvdOrder\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/evd/getUserToken\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/evd/callBackEvdCoupon\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/api/task/busTriggerTaskEvent.json\\\\\\\"], [\\\\\\\"reqPath\\\\\\\", \\\\\\\"==\\\\\\\", \\\\\\\"/datacenter-log-center/api/trackApi/commonAdd.json\\\\\\\"]]\\\", \\\"rule_name\\\": \\\"allow2\\\"}],\\\"custom_forbid_limit\\\":100,\\\"auth_downgrade_enabled\\\":false}" } 更新响应缓存插件 { "plugin_name" : "响应缓存插件", "remark" : "这是响应缓存插件", "plugin_type" : "proxy_cache", "plugin_scope" : "global", "plugin_content" : "{\\\"cache_key\\\": {\\\"system_params\\\": [\\\"$context.sourceIp\\\",\\\"$context.requestId\\\"],\\\"parameters\\\": [\\\"demo_parameter\\\"],\\\"headers\\\": [\\\"demo_header\\\"]},\\\"cache_http_status_and_ttl\\\": [{\\\"http_status\\\": [200],\\\"ttl\\\": 300},{\\\"http_status\\\": [300],\\\"ttl\\\": 200}],\\\"client_cache_control\\\": {\\\"mode\\\": \\\"apps\\\",\\\"datas\\\": [\\\"demo_app_id_1,demo_app_id_2\\\"]},\\\"cacheable_headers\\\": [\\\"demo_cacheable_headers_1,demo_cacheable_headers_2\\\"]}" } 更新请求镜像插件 { "plugin_name" : "请求镜像插件", "remark" : "这是请求镜像插件", "plugin_type" : "proxy_mirror", "plugin_scope" : "global", "plugin_content" : "{\\\"protocol\\\": \\\"http\\\",\\\"host\\\": \\\"xxx.xxx.xxx.xxx:1234\\\",\\\"path\\\": \\\"/test\\\",\\\"path_concat_mode\\\": \\\"replace\\\",\\\"sample_ratio\\\": 1,\\\"timeout\\\": 5000,\\\"mirror_request_body_enabled\\\": true}" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 plugin_id String 插件编码。 plugin_name String 插件名称。支持汉字,英文,数字,下划线,且只能以英文和汉字开头,3-255字符。 说明: 中文字符必须为UTF-8或者unicode编码。 plugin_type String 插件类型。 cors:跨域资源共享 set_resp_headers:HTTP响应头管理 kafka_log:Kafka日志推送 breaker:断路器 rate_limit: 流量控制 third_auth: 第三方认证 proxy_cache: 响应缓存 proxy_mirror: 请求镜像 plugin_scope String 插件可见范围 global:全局可见 app:集成应用可见 plugin_content String 插件定义内容,支持json。参考提供的具体模型定义 CorsPluginContent:跨域资源共享 定义内容 SetRespHeadersContent:HTTP响应头管理 定义内容 KafkaLogContent:Kafka日志推送 定义内容 BreakerContent:断路器 定义内容 RateLimitContent 流量控制 定义内容 ThirdAuthContent: 第三方认证 定义内容 ProxyCacheContent: 响应缓存 定义内容 ProxyMirrorContent: 请求镜像 定义内容 remark String 插件描述,255字符。 说明: 中文字符必须为UTF-8或者unicode编码。 create_time String 创建时间。 update_time String 更新时间。 roma_app_id String 归属集成应用编码,plugin_scope为app时生效 roma_app_name String API归属的集成应用名称 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 403 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 404 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 plugin_name 是 String 插件名称。支持汉字,英文,数字,下划线,且只能以英文和汉字开头,3-255字符。 说明: 中文字符必须为UTF-8或者unicode编码。 plugin_type 是 String 插件类型。 cors:跨域资源共享 set_resp_headers:HTTP响应头管理 kafka_log:Kafka日志推送 breaker:断路器 rate_limit: 流量控制 third_auth: 第三方认证 proxy_cache: 响应缓存 proxy_mirror: 请求镜像 plugin_scope 是 String 插件可见范围 global:全局可见 app:集成应用可见 plugin_content 是 String 插件定义内容,支持json。参考提供的具体模型定义 CorsPluginContent:跨域资源共享 定义内容 SetRespHeadersContent:HTTP响应头管理 定义内容 KafkaLogContent:Kafka日志推送 定义内容 BreakerContent:断路器 定义内容 RateLimitContent 流量控制 定义内容 ThirdAuthContent: 第三方认证 定义内容 ProxyCacheContent: 响应缓存 定义内容 ProxyMirrorContent: 请求镜像 定义内容 roma_app_id 否 String 归属集成应用编码,plugin_scope为app时生效 remark 否 String 插件描述,255字符。 说明: 中文字符必须为UTF-8或者unicode编码。
  • 响应参数 状态码:204 表6 响应Body参数 参数 参数类型 描述 - String No Content 状态码:400 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误信息。 状态码:403 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误信息。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 topics 是 Array of UpdateTopicAccessPolicyTopicsObject objects 策略列表。 表4 UpdateTopicAccessPolicyTopicsObject 参数 是否必选 参数类型 描述 name 是 String Topic名称。 policies 是 Array of UpdateTopicAccessPolicyPoliciesObject objects 权限列表。 description 否 String 描述。 sensitive_word 否 String 敏感字段。 表5 UpdateTopicAccessPolicyPoliciesObject 参数 是否必选 参数类型 描述 app_id 是 String 集成应用Key。 app_key 否 String 集成应用Key。 app_name 是 String 应用名称。 access_policy 是 String 权限类型。 all:发布+订阅 pub:发布 sub:订阅 owner 否 Boolean 是否为创建Topic时所选择的应用。 默认为false。 tag 否 String 权限类型对应的标签。 当权限类型是all时,发布和订阅的标签用符号“&”隔开。 当有多个标签时,标签用符号“||”隔开。
  • 请求示例 把Topic所属集成应用的权限修改为仅可发布消息 POST https://{endpoint}/v2/{project_id}/mqs/instances/{instance_id}/topics/accesspolicy { "topics" : [ { "name" : "topic-test-mqs", "policies" : [ { "owner" : true, "access_policy" : "pub", "app_name" : "app-dhytest", "tag" : "", "app_id" : "cd28a9d9-2184-42ce-9fbe-f3785b6caada" } ], "sensitive_word" : "", "description" : "" } ] }
  • 响应示例 状态码: 200 Created { "notification_id" : 100, "type" : 0, "status" : 0, "topic" : "string", "instance_id" : "string", "app_id" : "string" } 状态码: 404 Not Found { "error_code" : "ROMA.00110006", "error_msg" : "The resource does not exist. Check whether the resource ID 1 is correct.", "request_id" : "624c8be1-39b6-47b7-941d-c159aced368a-1619602544650-cnnorth7a-P-romalink-service01" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 app_id 是 String 通知归属的应用ID。 type 是 Integer 通知类型,0-设备上线通知,1-设备下线通知,2-设备添加通知,3-设备删除通知,4-设备变更通知,5-未认证设备通知。 topic 是 String 通知发送的主题名,该主题需要在MQS存在。 status 是 Integer 启停状态,0-启用,1-停用。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 notification_id Integer 订阅ID。 type Integer 订阅类型,0:设备上线通知类型,1:设备下线通知类型,2:设备添加通知类型, 3:设备删除通知类型,4:设备变更通知类型。 status Integer 订阅管理状态,0:启用,1:停用。 topic String 订阅的Topic名称。 instance_id String 实例ID。 app_id String 应用ID。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 系统错误码,针对4xx和5xx类HTTP错误码的详细错误码。 error_msg String 错误描述。 request_id String 消息ID。 状态码: 404 表6 响应Body参数 参数 参数类型 描述 error_code String 系统错误码,针对4xx和5xx类HTTP错误码的详细错误码。 error_msg String 错误描述。 request_id String 消息ID。 状态码: 500 表7 响应Body参数 参数 参数类型 描述 error_code String 系统错误码,针对4xx和5xx类HTTP错误码的详细错误码。 error_msg String 错误描述。 request_id String 消息ID。
  • 响应示例 状态码: 200 OK { "total" : 2, "size" : 2, "app_codes" : [ { "app_code" : "GjOD3g80AABuuFeEJpVQADBlAjBh3UzC7W+gr4VJBB5BtJ4fdVOQoSvoji3gFxUDb5pWBz9wUcw9+8/bFZ1B/4pq29wCMQC0pQWX6zTndljDEl99As1pw+WntAU9xcq+ffagoH6zDpKUvdxV6Ezj8LcCcPZN6BU=", "app_id" : "9ed8b7fe84224de681e7d7a5587e76dc", "id" : "32dc8ca22d1b4b9cb94022186880576b", "create_time" : "2020-07-24T02:37:24Z" }, { "app_code" : "fdc8d90a30174460a91ddacfa54d6f04c92e523a85cc4a1894f87cb13b6f572a", "app_id" : "9ed8b7fe84224de681e7d7a5587e76dc", "id" : "b3d34f746d0847fb95138670e10207ed", "create_time" : "2020-07-24T02:31:45Z" } ] } 状态码: 400 Bad Request { "error_code" : "APIG.2012", "error_msg" : "Invalid parameter value,parameterName:app_id. Please refer to the support documentation" } 状态码: 401 Unauthorized { "error_code" : "APIG.1002", "error_msg" : "Incorrect token or token resolution failed" } 状态码: 403 Forbidden { "error_code" : "APIG.1005", "error_msg" : "No permissions to request this method" } 状态码: 404 Not Found { "error_code" : "APIG.3004", "error_msg" : "App 9ed8b7fe84224de681e7d7a5587e76dc does not exist" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 size Integer 本次返回的列表长度 total Long 满足条件的记录数 app_codes Array of AppCodeBaseInfo objects App Code列表 表5 AppCodeBaseInfo 参数 参数类型 描述 app_code String App Code值 支持英文,+_!@#$%+/=,且只能以英文和+、/开头。 id String 编号 app_id String 应用编号 create_time String 创建时间 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 403 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 404 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表10 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应示例 状态码: 400 Bad Request { "error_code" : "APIG.2012", "error_msg" : "Invalid parameter value,parameterName:domain_id. Please refer to the support documentation" } 状态码: 401 Unauthorized { "error_code" : "APIG.1002", "error_msg" : "Incorrect token or token resolution failed" } 状态码: 403 Forbidden { "error_code" : "APIG.1005", "error_msg" : "No permissions to request this method" } 状态码: 404 Not Found { "error_code" : "APIG.3020", "error_msg" : "The URL domain does not exist" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
  • 响应参数 状态码: 400 表3 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 403 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 404 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 permissions Array of strings 权限。 rule_id Integer 规则ID。 name String 规则名称,支持英文大小写、数字、下划线和中划线,长度1-64。 app_id String 应用ID。 app_name String 应用名称。 description String 描述。 status Integer 规则状态,0-启用,1-停用。 data_parsing_status Integer 数据解析状态,ENABLE时data_parsing必填,0-启用,1-停用。 sql_field String SQL查询字段。 sql_where String SQL查询条件。 rule_express String 完整的规则表达式。 created_user CreatedUser object 创建时的用户。 last_updated_user LastUpdatedUser object 最后更新时的用户。 created_datetime Long 创建时间,timestamp(ms),使用UTC时区。 last_updated_datetime Long 最后修改时间,timestamp(ms),使用UTC时区。 表4 CreatedUser 参数 参数类型 描述 user_id String 用户ID(保留字段,未使用)。 user_name String 用户名。 表5 LastUpdatedUser 参数 参数类型 描述 user_id String 用户ID(保留字段,未使用) user_name String 用户名。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 系统错误码,针对4xx和5xx类HTTP错误码的详细错误码。 error_msg String 错误描述。 request_id String 消息ID。 状态码: 404 表7 响应Body参数 参数 参数类型 描述 error_code String 系统错误码,针对4xx和5xx类HTTP错误码的详细错误码。 error_msg String 错误描述。 request_id String 消息ID。 状态码: 500 表8 响应Body参数 参数 参数类型 描述 error_code String 系统错误码,针对4xx和5xx类HTTP错误码的详细错误码。 error_msg String 错误描述。 request_id String 消息ID。
  • 响应示例 状态码: 200 OK { "permissions" : [ "read", "access", "delete", "modify" ], "rule_id" : 702244, "name" : "rule", "app_id" : "a1503e51-46f7-4d23-8617-7cb2d28dde98", "app_name" : "app-link", "description" : null, "status" : 0, "data_parsing_status" : 1, "sql_field" : null, "sql_where" : null, "rule_express" : null, "created_user" : { "user_id" : "", "user_name" : "user" }, "last_updated_user" : { "user_id" : "", "user_name" : "user" }, "created_datetime" : 1607598152997, "last_updated_datetime" : 1607598152997 } 状态码: 400 Bad Request { "error_code" : "SCB.00000000", "error_msg" : "Parameter is not valid for operation [romalink.link-rule.queryDetail]. Parameter is [rule_oid]. Processor is [path].", "request_id" : "cb39e78a-afd3-4e04-901d-70468b1c23dc-1619602712496-cnnorth7a-P-romalink-service01" } 状态码: 404 Not Found { "error_code" : "ROMA.00110006", "error_msg" : "The resource does not exist. Check whether the resource ID ff38023c-0854-4779-847d-72528e1f5da5 is correct.", "request_id" : "72b07918-f6a2-4721-81bf-f3fd5486025e-1619663576836-cnnorth7a-P-romalink-service01" } 状态码: 500 Internal Server Error { "error_code" : "ROMA.00110002", "error_msg" : "The instance does not exist. project_id: 397cd10b30544c588b2f4a56d83856c4, instance_id: f3bb386a-23ec-47aa-9943-4c60ac658611", "request_id" : "c8c06d0a-be92-4fdf-9d10-bc20131ab158-1619593104919-cnnorth7a-P-romalink-service01" }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 acl_name String 名称 acl_type String 类型: PERMIT(白名单类型) DENY(黑名单类型) acl_value String ACL策略值 entity_type String 对象类型: IP DOMAIN DOMAIN_ID id String 编号 update_time String 更新时间 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 403 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 404 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应示例 状态码: 200 OK { "id" : "7eb619ecf2a24943b099833cd24a01ba", "acl_name" : "acl_demo", "entity_type" : "IP", "acl_type" : "PERMIT", "acl_value" : "192.168.1.5,192.168.10.1", "update_time" : "2020-08-04T08:42:43Z" } 状态码: 400 Bad Request { "error_code" : "APIG.2011", "error_msg" : "Invalid parameter value,parameterName:id. Please refer to the support documentation" } 状态码: 401 Unauthorized { "error_code" : "APIG.1002", "error_msg" : "Incorrect token or token resolution failed" } 状态码: 403 Forbidden { "error_code" : "APIG.1005", "error_msg" : "No permissions to request this method" } 状态码: 404 Not Found { "error_code" : "APIG.3006", "error_msg" : "Access control policy 7eb619ecf2a24943b099833cd24a01ba does not exist" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
  • 响应示例 状态码: 400 Bad Request { "error_code" : "SCB.00000000", "error_msg" : "Parameter is not valid for operation [romalink.link-services.deleteService]. Parameter is [service_id]. Processor is [path].", "request_id" : "cb39e78a-afd3-4e04-901d-70468b1c23dc-1619602712496-cnnorth7a-P-romalink-service01" } 状态码: 404 Not Found { "error_code" : "ROMA.00110006", "error_msg" : "The resource does not exist. Check whether the resource ID 1 is correct.", "request_id" : "13984193-ca65-4954-9b7f-4b7d680399d6-1619678681445-cnnorth7a-P-romalink-service01" } 状态码: 500 Internal Server Error { "error_code" : "ROMA.00110002", "error_msg" : "The instance does not exist. project_id: 397cd10b30544c588b2f4a56d83856c4, instance_id: f3bb386a-23ec-47aa-9943-4c60ac658611", "request_id" : "c8c06d0a-be92-4fdf-9d10-bc20131ab158-1619593104919-cnnorth7a-P-romalink-service01" }
  • 响应参数 状态码: 400 表3 响应Body参数 参数 参数类型 描述 error_code String 系统错误码,针对4xx和5xx类HTTP错误码的详细错误码。 error_msg String 错误描述。 request_id String 消息ID。 状态码: 404 表4 响应Body参数 参数 参数类型 描述 error_code String 系统错误码,针对4xx和5xx类HTTP错误码的详细错误码。 error_msg String 错误描述。 request_id String 消息ID。 状态码: 500 表5 响应Body参数 参数 参数类型 描述 error_code String 系统错误码,针对4xx和5xx类HTTP错误码的详细错误码。 error_msg String 错误描述。 request_id String 消息ID。
  • 响应示例 状态码: 200 OK { "total" : 1, "size" : 1, "apis" : [ { "content_type" : "json", "created_time" : "2020-09-18T09:25:59Z", "description" : "", "id" : "bd42841c20184da6bbf457c6d8a06e37", "instance" : "f0fa1789-3b76-433b-a787-9892951c620e", "method" : "GET", "modified_time" : "2020-09-18T09:37:28Z", "name" : "livedata_api_demo", "parameters" : [ ], "path" : "/test/function", "return_format" : false, "roma_app_id" : "98df09fb-d459-4cbf-83a7-2b55ca6f3d5d", "roma_app_name" : "app-demo", "scripts" : [ ], "status" : 1, "type" : "", "version" : "1.0.1" } ] } 状态码: 400 Bad Request { "error_code" : "APIG.2011", "error_msg" : "Invalid parameter value,parameterName:instance_id. Please refer to the support documentation" } 状态码: 401 Unauthorized { "error_code" : "APIG.1002", "error_msg" : "Incorrect token or token resolution failed" } 状态码: 403 Forbidden { "error_code" : "APIG.1005", "error_msg" : "No permissions to request this method" } 状态码: 404 Not Found { "error_code" : "APIG.3030", "error_msg" : "The instance does not exist;id:f0fa1789-3b76-433b-a787-9892951c620ec" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
  • 响应示例 状态码: 201 OK { "attached_plugins" : [ { "plugin_attach_id" : "8aa097b00e9843efacb9c593d11b769e", "plugin_id" : "5b729aa252764739b3s237ef0d66dc63", "plugin_name" : "跨域插件", "plugin_type" : "cors", "plugin_scope" : "global", "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID", "env_name" : "RELEASE", "api_id" : "8aa097b00e9843efabc9c593d11b769d", "api_name" : "api_name", "attached_time" : "2022-11-02T12:31:23.353Z" } ] } 状态码: 400 Bad Request { "error_code" : "APIG.2012", "error_msg" : "Invalid parameter value,parameterName:instance_id. Please refer to the support documentation" } 状态码: 401 Unauthorized { "error_code" : "APIG.1002", "error_msg" : "Incorrect token or token resolution failed" } 状态码: 403 Forbidden { "error_code" : "APIG.1005", "error_msg" : "No permissions to request this method" } 状态码: 404 Not Found { "error_code" : "APIG.3068", "error_msg" : "Plugin b294018ee0554156a875b3513e02e5b9 does not exist" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
共100000条