展开

关键词

首页关键词双十一云拨测哪里买

双十一云拨测哪里买

相关内容

云拨测

云拨测

云拨测(CAT)利用分布于全球的服务质量监测点,对您的网站、域名、API接口等进行周期性监控,您可通过查看可用率和延时随时间区间变化来帮助分析站点质量情况。
  • 云拨测

    请求结构,公共参数,签名方法 v3,签名方法,返回结果,获取用户可用资源限制,查询用户的告警主题列表,查询本用户可选的拨测点列表,验证拨测结果,查询拨测任务的返回码统计信息,查询拨测任务的历史返回码信息,获取任务列表的实时数据,查询拨测任务的走势数据,获取实时可用率信息,获取一天的整体可用率信息,获取指定时刻的可用率地图信息,查询拨测流水,按任务查询拨测告警列表,查询拨测告警列表,绑定告警策略组,修改拨测分组,查询拨测分组列表,删除拨测分组,添加拨测分组,运行拨测任务,暂停拨测任务,修改拨测任务(扩展),获取拨测任务总数,按类型查询拨测任务列表,查询拨测任务信息,删除拨测任务,创建拨测任务(扩展),产品概述,产品优势,应用场景,购买方式,计费概述,欠费说明,文件传输任务分析,页面性能任务分析,音视频体验任务分析,网络质量任务分析,端口性能任务分析,任务列表,新建文件传输任务,新建页面性能任务,新建音视频体验任务,新建网络质量任务,新建端口性能任务,快速入门,常见问题,查看告警历史,告警指标说明,新建告警,联系我们,拨测点说明,恢复拨测任务,暂停拨测任务,旧版文档入口,新旧版差异说明,可用性监控,站点质量监控,词汇表,简介,API 概览,调用方式,请求结构,公共参数,签名方法 v3,签名方法,返回结果,更新历史,拨测资源相关接口,获取用户可用资源限制,查询用户的告警主题列表,查询本用户可选的拨测点列表,拨测结果相关接口,验证拨测结果,查询拨测任务的返回码统计信息,查询拨测任务的历史返回码信息,获取任务列表的实时数据,查询拨测任务的走势数据,获取实时可用率信息,获取一天的整体可用率信息,获取指定时刻的可用率地图信息,查询拨测流水,拨测告警相关接口,按任务查询拨测告警列表,查询拨测告警列表,绑定告警策略组,拨测分组相关接口,修改拨测分组,查询拨测分组列表,删除拨测分组,添加拨测分组,拨测任务相关接口,运行拨测任务,暂停拨测任务,修改拨测任务(扩展),获取拨测任务总数,按类型查询拨测任务列表,查询拨测任务信息,删除拨测任务,创建拨测任务(扩展),修改拨测任务,为拨测任务修改告警策略,查询拨测任务的统计数据,查询拨测任务列表,查询拨测任务详情,查询用户的告警接收组列表,查询拨测分组详情,创建拨测任务,为拨测任务创建告警策略,数据结构,错误码,故障返回码,操作指南,产品简介,购买指南,多维分析,新建任务,产品概述,产品优势,应用场景,购买方式,计费概述,欠费说明,文件传输任务分析,页面性能任务分析,音视频体验任务分析,网络质量任务分析,端口性能任务分析,任务列表,新建文件传输任务,新建页面性能任务,新建音视频体验任务,新建网络质量任务,新建端口性能任务,快速入门,常见问题,告警服务,查看告警历史,告警指标说明,新建告警,联系我们,拨测点说明,恢复拨测任务,暂停拨测任务,旧版文档入口,新旧版差异说明
    来自:
  • 请求结构

    1. 服务地址API 支持就近地域接入,本产品就近地域接入域名为 cat.tencentcloudapi.com ,也支持指定地域域名访问,例如广州地域的域名为 cat.ap-guangzhou.tencentcloudapi.com 。推荐使用就近地域接入域名。根据调用接口时客户端所在位置,会自动解析到最近的某个具体地域的服务器。例如在广州发起请求,会自动解析到广州的服务器,效果和指定 cat.ap-guangzhou.tencentcloudapi.com 是一致的。注意:对时延敏感的业务,建议指定带地域的域名。注意:域名是 API 的接入点,并不代表产品或者接口实际提供服务的地域。产品支持的地域列表请在调用方式公共参数文档中查阅,接口支持的地域请在接口文档输入参数中查阅。目前支持的域名列表为: 接入地域域名 就近地域接入(推荐,只支持非金融区)cat.tencentcloudapi.com 华南地区(广州)cat.ap-guangzhou.tencentcloudapi.com 华东地区(上海)cat.ap-shanghai.tencentcloudapi.com 华北地区(北京)cat.ap-beijing.tencentcloudapi.com 西南地区(成都)cat.ap-chengdu.tencentcloudapi.com 西南地区(重庆)cat.ap-chongqing.tencentcloudapi.com 港澳台地区(中国香港)cat.ap-hongkong.tencentcloudapi.com 亚太东南(新加坡)cat.ap-singapore.tencentcloudapi.com 亚太东南(曼谷)cat.ap-bangkok.tencentcloudapi.com 亚太南部(孟买)cat.ap-mumbai.tencentcloudapi.com 亚太东北(首尔)cat.ap-seoul.tencentcloudapi.com 亚太东北(东京)cat.ap-tokyo.tencentcloudapi.com 美国东部(弗吉尼亚)cat.na-ashburn.tencentcloudapi.com 美国西部(硅谷)cat.na-siliconvalley.tencentcloudapi.com 北美地区(多伦多)cat.na-toronto.tencentcloudapi.com 欧洲地区(法兰克福)cat.eu-frankfurt.tencentcloudapi.com 欧洲地区(莫斯科)cat.eu-moscow.tencentcloudapi.com 2. 通信协议腾讯云 API 的所有接口均通过 HTTPS 进行通信,提供高安全性的通信通道。3. 请求方法支持的 HTTP 请求方法: POST(推荐)GET POST 请求支持的 Content-Type 类型: applicationjson(推荐),必须使用签名方法 v3(TC3-HMAC-SHA256)。applicationx-www-form-urlencoded,必须使用签名方法 v1(HmacSHA1 或 HmacSHA256)。multipartform-data(仅部分接口支持),必须使用签名方法 v3(TC3-HMAC-SHA256)。 GET 请求的请求包大小不得超过32KB。POST 请求使用签名方法 v1(HmacSHA1、HmacSHA256)时不得超过1MB。POST 请求使用签名方法 v3(TC3-HMAC-SHA256)时支持10MB。4. 字符编码均使用UTF-8编码。
    来自:
  • 广告
    关闭

    2021 V+全真互联网全球创新创业挑战赛

    百万资源,六大权益,启动全球招募

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到
  • 公共参数

    公共参数是用于标识用户和接口签名的参数,如非必要,在每个接口单独的接口文档中不再对这些参数进行说明,但每次请求均需要携带这些参数,才能正常发起请求。公共参数的具体内容会因您使用的签名方法版本不同而有所差异。使用签名方法 v3 的公共参数签名方法 v3 (有时也称作 TC3-HMAC-SHA256)相比签名方法 v1 (有些文档可能会简称签名方法),更安全,支持更大的请求包,支持 POST JSON 格式,性能有一定提升,推荐使用该签名方法计算签名。完整介绍详见 文档。注意:接口文档中的示例由于目的是展示接口参数用法,简化起见,使用的是签名方法 v1 GET 请求,如果依旧想使用签名方法 v1 请参考下文章节。使用签名方法 v3 时,公共参数需要统一放到 HTTP Header 请求头部中,如下: 参数名称类型必选描述 X-TC-ActionString是操作的接口名称。取值参考接口文档中输入参数公共参数 Action 的说明。例如云服务器的查询实例列表接口,取值为 DescribeInstances。 X-TC-RegionString-地域参数,用来标识希望操作哪个地域的数据。接口接受的地域取值参考接口文档中输入参数公共参数 Region 的说明。注意:某些接口不需要传递该参数,接口文档中会对此特别说明,此时即使传递该参数也不会生效。 X-TC-TimestampInteger是当前 UNIX 时间戳,可记录发起 API 请求的时间。例如 1529223702。注意:如果与服务器时间相差超过5分钟,会引起签名过期错误。 X-TC-VersionString是操作的 API 的版本。取值参考接口文档中入参公共参数 Version 的说明。例如云服务器的版本 2017-03-12。 AuthorizationString是HTTP 标准身份认证头部字段,例如:TC3-HMAC-SHA256 Credential=AKIDEXAMPLEDateservicetc3_request, SignedHeaders=content-type;host, Signature=fe5f80f77d5fa3beca038a248ff027d0445342fe2855ddc963176630326f1024 其中,- TC3-HMAC-SHA256:签名方法,目前固定取该值;- Credential:签名凭证,AKIDEXAMPLE 是 SecretId;Date 是 UTC 标准时间的日期,取值需要和公共参数 X-TC-Timestamp 换算的 UTC 标准时间日期一致;service 为产品名,通常为域名前缀,例如域名 cvm.tencentcloudapi.com 意味着产品名是 cvm。本产品取值为 cat;- SignedHeaders:参与签名计算的头部信息,content-type 和 host 为必选头部;- Signature:签名摘要,计算过程详见 文档。 X-TC-TokenString否即 安全凭证服务 所颁发的临时安全凭证中的 Token,使用时需要将 SecretId 和 SecretKey 的值替换为临时安全凭证中的 TmpSecretId 和 TmpSecretKey。使用长期密钥时不能设置此 Token 字段。 X-TC-LanguageString否指定接口返回的语言,仅部分接口支持此参数。取值:zh-CN,en-US。zh-CN 返回中文,en-US 返回英文。 假设用户想要查询广州地域的云服务器实例列表中的前十个,接口参数设置为偏移量 Offset=0,返回数量 Limit=10,则其请求结构按照请求 URL、请求头部、请求体示例如下:HTTP GET 请求结构示例:https:cvm.tencentcloudapi.com?Limit=10&Offset=0 Authorization: TC3-HMAC-SHA256 Credential=AKID********EXAMPLE2018-10-09cvmtc3_request, SignedHeaders=content-type;host, Signature=5da7a33f6993f0614b047e5df4582db9e9bf4672ba50567dba16c6ccf174c474Content-Type: applicationx-www-form-urlencodedHost: cvm.tencentcloudapi.comX-TC-Action: DescribeInstancesX-TC-Version: 2017-03-12X-TC-Timestamp: 1539084154X-TC-Region: ap-guangzhouHTTP POST (applicationjson) 请求结构示例:https:cvm.tencentcloudapi.com Authorization: TC3-HMAC-SHA256 Credential=AKID********EXAMPLE2018-05-30cvmtc3_request, SignedHeaders=content-type;host, Signature=582c400e06b5924a6f2b5d7d672d79c15b13162d9279b0855cfba6789a8edb4cContent-Type: applicationjsonHost: cvm.tencentcloudapi.comX-TC-Action: DescribeInstancesX-TC-Version: 2017-03-12X-TC-Timestamp: 1527672334X-TC-Region: ap-guangzhou {"Offset":0,"Limit":10}HTTP POST (multipartform-data)请求结构示例(仅特定的接口支持):https:cvm.tencentcloudapi.com Authorization: TC3-HMAC-SHA256 Credential=AKID********EXAMPLE2018-05-30cvmtc3_request, SignedHeaders=content-type;host, Signature=582c400e06b5924a6f2b5d7d672d79c15b13162d9279b0855cfba6789a8edb4cContent-Type: multipartform-data; boundary=58731222010402Host: cvm.tencentcloudapi.comX-TC-Action: DescribeInstancesX-TC-Version: 2017-03-12X-TC-Timestamp: 1527672334X-TC-Region: ap-guangzhou --58731222010402Content-Disposition: form-data; name="Offset" 0--58731222010402Content-Disposition: form-data; name="Limit" 10--58731222010402--使用签名方法 v1 的公共参数使用签名方法 v1 (有时会称作 HmacSHA256 和 HmacSHA1),公共参数需要统一放到请求串中,完整介绍详见文档 参数名称类型必选描述 ActionString是操作的接口名称。取值参考接口文档中输入参数公共参数 Action 的说明。例如云服务器的查询实例列表接口,取值为 DescribeInstances。 RegionString-地域参数,用来标识希望操作哪个地域的数据。接口接受的地域取值参考接口文档中输入参数公共参数 Region 的说明。注意:某些接口不需要传递该参数,接口文档中会对此特别说明,此时即使传递该参数也不会生效。 TimestampInteger是当前 UNIX 时间戳,可记录发起 API 请求的时间。例如1529223702,如果与当前时间相差过大,会引起签名过期错误。 NonceInteger是随机正整数,与 Timestamp 联合起来,用于防止重放攻击。 SecretIdString是在 云API密钥 上申请的标识身份的 SecretId,一个 SecretId 对应唯一的 SecretKey ,而 SecretKey 会用来生成请求签名 Signature。 SignatureString是请求签名,用来验证此次请求的合法性,需要用户根据实际的输入参数计算得出。具体计算方法参见 文档。 VersionString是操作的 API 的版本。取值参考接口文档中入参公共参数 Version 的说明。例如云服务器的版本 2017-03-12。 SignatureMethodString否签名方式,目前支持 HmacSHA256 和 HmacSHA1。只有指定此参数为 HmacSHA256 时,才使用 HmacSHA256 算法验证签名,其他情况均使用 HmacSHA1 验证签名。 TokenString否即 安全凭证服务 所颁发的临时安全凭证中的 Token,使用时需要将 SecretId 和 SecretKey 的值替换为临时安全凭证中的 TmpSecretId 和 TmpSecretKey。使用长期密钥时不能设置此 Token 字段。 LanguageString否指定接口返回的语言,仅部分接口支持此参数。取值:zh-CN,en-US。zh-CN 返回中文,en-US 返回英文。 假设用户想要查询广州地域的云服务器实例列表,其请求结构按照请求 URL、请求头部、请求体示例如下:HTTP GET 请求结构示例:https:cvm.tencentcloudapi.com?Action=DescribeInstances&Version=2017-03-12&SignatureMethod=HmacSHA256&Timestamp=1527672334&Signature=37ac2f4fde00b0ac9bd9eadeb459b1bbee224158d66e7ae5fcadb70b2d181d02&Region=ap-guangzhou&Nonce=23823223&SecretId=AKID********EXAMPLE Host: cvm.tencentcloudapi.comContent-Type: applicationx-www-form-urlencodedHTTP POST 请求结构示例:https:cvm.tencentcloudapi.com Host: cvm.tencentcloudapi.comContent-Type: applicationx-www-form-urlencoded Action=DescribeInstances&Version=2017-03-12&SignatureMethod=HmacSHA256&Timestamp=1527672334&Signature=37ac2f4fde00b0ac9bd9eadeb459b1bbee224158d66e7ae5fcadb70b2d181d02&Region=ap-guangzhou&Nonce=23823223&SecretId=AKID********EXAMPLE
    来自:
  • 签名方法 v3

    以下文档说明了签名方法 v3 的签名过程,但仅在您编写自己的代码来调用腾讯云 API 时才有用。我们推荐您使用 腾讯云 API Explorer ,腾讯云 SDK 和 腾讯云命令行工具(TCCLI) 等开发者工具,从而无需学习如何对 API 请求进行签名。 推荐使用 API Explorer 点击调试 您可以通过 API Explorer 的【签名串生成】模块查看每个接口签名的生成过程。 腾讯云 API 会对每个请求进行身份验证,用户需要使用安全凭证,经过特定的步骤对请求进行签名(Signature),每个请求都需要在公共参数中指定该签名结果并以指定的方式和格式发送请求。为什么要进行签名签名通过以下方式帮助保护请求: 验证请求者的身份签名确保请求是由持有有效访问密钥的人发送的。请参阅控制台 云 API 密钥 页面获取密钥相关信息。 保护传输中的数据为了防止请求在传输过程中被篡改,腾讯云 API 会使用请求参数来计算请求的哈希值,并将生成的哈希值加密后作为请求的一部分,发送到腾讯云 API 服务器。服务器会使用收到的请求参数以同样的过程计算哈希值,并验证请求中的哈希值。如果请求被篡改,将导致哈希值不一致,腾讯云 API 将拒绝本次请求。 签名方法 v3 (TC3-HMAC-SHA256)功能上覆盖了以前的签名方法 v1,而且更安全,支持更大的请求,支持 JSON 格式,POST 请求支持传空数组和空字符串,性能有一定提升,推荐使用该签名方法计算签名。首次接触,建议使用 API Explorer 中的“签名串生成”功能,选择签名版本为“API 3.0 签名 v3”,可以生成签名过程进行验证,也可直接生成 SDK 代码。推荐使用腾讯云 API 配套的 7 种常见的编程语言 SDK,已经封装了签名和请求过程,均已开源,支持 Python、Java、PHP、Go、NodeJS、.NET、C++。申请安全凭证本文使用的安全凭证为密钥,密钥包括 SecretId 和 SecretKey。每个用户最多可以拥有两对密钥。 SecretId:用于标识 API 调用者身份,可以简单类比为用户名。SecretKey:用于验证 API 调用者的身份,可以简单类比为密码。用户必须严格保管安全凭证,避免泄露,否则将危及财产安全。如已泄漏,请立刻禁用该安全凭证。 申请安全凭证的具体步骤如下: 登录 腾讯云管理中心控制台 。前往 云API密钥 的控制台页面。在 云API密钥 页面,单击【新建密钥】即可以创建一对密钥。 签名版本 v3 签名过程云 API 支持 GET 和 POST 请求。对于GET方法,只支持 Content-Type: applicationx-www-form-urlencoded 协议格式。对于POST方法,目前支持 Content-Type: applicationjson 以及 Content-Type: multipartform-data 两种协议格式,json 格式绝大多数接口均支持,multipart 格式只有特定接口支持,此时该接口不能使用 json 格式调用,参考具体业务接口文档说明。推荐使用 POST 请求,因为两者的结果并无差异,但 GET 请求只支持 32 KB 以内的请求包。下面以云服务器查询广州区实例列表作为例子,分步骤介绍签名的计算过程。我们选择该接口是因为: 云服务器默认已开通,该接口很常用;该接口是只读的,不会改变现有资源的状态;接口覆盖的参数种类较全,可以演示包含数据结构的数组如何使用。 在示例中,不论公共参数或者接口的参数,我们尽量选择容易犯错的情况。在实际调用接口时,请根据实际情况来,每个接口的参数并不相同,不要照抄这个例子的参数和值。假设用户的 SecretId 和 SecretKey 分别是:AKIDz8krbsJ5yKBZQpn74WFkmLPx3******* 和 Gu5t9xGARNpq86cd98joQYCN3*******。用户想查看广州区云服务器名为“未命名”的主机状态,只返回一条数据。则请求可能为:curl -X POST https:cvm.tencentcloudapi.com -H "Authorization: TC3-HMAC-SHA256 Credential=AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******2019-02-25cvmtc3_request, SignedHeaders=content-type;host, Signature=2230eefd229f582d8b1b891af7107b91597240707d778ab3738f756258d7652c" -H "Content-Type: applicationjson; charset=utf-8" -H "Host: cvm.tencentcloudapi.com" -H "X-TC-Action: DescribeInstances" -H "X-TC-Timestamp: 1551113065" -H "X-TC-Version: 2017-03-12" -H "X-TC-Region: ap-guangzhou" -d '{"Limit": 1, "Filters": , "Name": "instance-name"}]}' 下面详细解释签名计算过程。1. 拼接规范请求串按如下伪代码格式拼接规范请求串(CanonicalRequest):CanonicalRequest = HTTPRequestMethod + 'n' + CanonicalURI + 'n' + CanonicalQueryString + 'n' + CanonicalHeaders + 'n' + SignedHeaders + 'n' + HashedRequestPayload 字段名称解释 HTTPRequestMethodHTTP 请求方法(GET、POST )。此示例取值为 POST。 CanonicalURIURI 参数,API 3.0 固定为正斜杠()。 CanonicalQueryString发起 HTTP 请求 URL 中的查询字符串,对于 POST 请求,固定为空字符串"",对于 GET 请求,则为 URL 中问号(?)后面的字符串内容,例如:Limit=10&Offset=0。注意:CanonicalQueryString 需要参考 RFC3986 进行 URLEncode,字符集 UTF8,推荐使用编程语言标准库,所有特殊字符均需编码,大写形式。 CanonicalHeaders参与签名的头部信息,至少包含 host 和 content-type 两个头部,也可加入自定义的头部参与签名以提高自身请求的唯一性和安全性。拼接规则:头部 key 和 value 统一转成小写,并去掉首尾空格,按照 key:valuen 格式拼接;多个头部,按照头部 key(小写)的 ASCII 升序进行拼接。此示例计算结果是 content-type:applicationjson; charset=utf-8nhost:cvm.tencentcloudapi.comn。注意:content-type 必须和实际发送的相符合,有些编程语言网络库即使未指定也会自动添加 charset 值,如果签名时和发送时不一致,服务器会返回签名校验失败。 SignedHeaders参与签名的头部信息,说明此次请求有哪些头部参与了签名,和 CanonicalHeaders 包含的头部内容是一一对应的。content-type 和 host 为必选头部。拼接规则:头部 key 统一转成小写;多个头部 key(小写)按照 ASCII 升序进行拼接,并且以分号(;)分隔。 此示例为 content-type;host HashedRequestPayload请求正文(payload,即 body,此示例为 {"Limit": 1, "Filters": , "Name": "instance-name"}]})的哈希值,计算伪代码为 Lowercase(HexEncode(Hash.SHA256(RequestPayload))),即对 HTTP 请求正文做 SHA256 哈希,然后十六进制编码,最后编码串转换成小写字母。对于 GET 请求,RequestPayload 固定为空字符串。此示例计算结果是 35e9c5b0e3ae67532d3c9f17ead6c90222632e5b1ff7f6e89887f1398934f064。 根据以上规则,示例中得到的规范请求串如下:POST content-type:applicationjson; charset=utf-8host:cvm.tencentcloudapi.com content-type;host35e9c5b0e3ae67532d3c9f17ead6c90222632e5b1ff7f6e89887f1398934f0642. 拼接待签名字符串按如下格式拼接待签名字符串:StringToSign = Algorithm + n + RequestTimestamp + n + CredentialScope + n + HashedCanonicalRequest 字段名称解释 Algorithm签名算法,目前固定为 TC3-HMAC-SHA256。 RequestTimestamp请求时间戳,即请求头部的公共参数 X-TC-Timestamp 取值,取当前时间 UNIX 时间戳,精确到秒。此示例取值为 1551113065。 CredentialScope凭证范围,格式为 Dateservicetc3_request,包含日期、所请求的服务和终止字符串(tc3_request)。Date 为 UTC 标准时间的日期,取值需要和公共参数 X-TC-Timestamp 换算的 UTC 标准时间日期一致;service 为产品名,必须与调用的产品域名一致。此示例计算结果是 2019-02-25cvmtc3_request。 HashedCanonicalRequest前述步骤拼接所得规范请求串的哈希值,计算伪代码为 Lowercase(HexEncode(Hash.SHA256(CanonicalRequest)))。此示例计算结果是 5ffe6a04c0664d6b969fab9a13bdab201d63ee709638e2749d62a09ca18d7031。 注意: Date 必须从时间戳 X-TC-Timestamp 计算得到,且时区为 UTC+0。如果加入系统本地时区信息,例如东八区,将导致白天和晚上调用成功,但是凌晨时调用必定失败。假设时间戳为 1551113065,在东八区的时间是 2019-02-26 00:44:25,但是计算得到的 Date 取 UTC+0 的日期应为 2019-02-25,而不是 2019-02-26。Timestamp 必须是当前系统时间,且需确保系统时间和标准时间是同步的,如果相差超过五分钟则必定失败。如果长时间不和标准时间同步,可能导致运行一段时间后,请求必定失败,返回签名过期错误。 根据以上规则,示例中得到的待签名字符串如下:TC3-HMAC-SHA25615511130652019-02-25cvmtc3_request5ffe6a04c0664d6b969fab9a13bdab201d63ee709638e2749d62a09ca18d70313. 计算签名1)计算派生签名密钥,伪代码如下:SecretKey = "Gu5t9xGARNpq86cd98joQYCN3*******"SecretDate = HMAC_SHA256("TC3" + SecretKey, Date)SecretService = HMAC_SHA256(SecretDate, Service)SecretSigning = HMAC_SHA256(SecretService, "tc3_request")派生出的密钥 SecretDate、SecretService 和 SecretSigning 是二进制的数据,可能包含不可打印字符,此处不展示中间结果。请注意,不同的编程语言,HMAC 库函数中参数顺序可能不一样,请以实际情况为准。此处的伪代码密钥参数 key 在前,消息参数 data 在后。通常标准库函数会提供二进制格式的返回值,也可能会提供打印友好的十六进制格式的返回值,此处使用的是二进制格式。 字段名称解释 SecretKey原始的 SecretKey,即 Gu5t9xGARNpq86cd98joQYCN3*******。 Date即 Credential 中的 Date 字段信息。此示例取值为 2019-02-25。 Service即 Credential 中的 Service 字段信息。此示例取值为 cvm。 2)计算签名,伪代码如下:Signature = HexEncode(HMAC_SHA256(SecretSigning, StringToSign))此示例计算结果是 2230eefd229f582d8b1b891af7107b91597240707d778ab3738f756258d7652c。4. 拼接 Authorization按如下格式拼接 Authorization:Authorization = Algorithm + ' ' + 'Credential=' + SecretId + '' + CredentialScope + ', ' + 'SignedHeaders=' + SignedHeaders + ', ' + 'Signature=' + Signature 字段名称解释 Algorithm签名方法,固定为 TC3-HMAC-SHA256。 SecretId密钥对中的 SecretId,即 AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******。 CredentialScope见上文,凭证范围。此示例计算结果是 2019-02-25cvmtc3_request。 SignedHeaders见上文,参与签名的头部信息。此示例取值为 content-type;host。 Signature签名值。此示例计算结果是 2230eefd229f582d8b1b891af7107b91597240707d778ab3738f756258d7652c。 根据以上规则,示例中得到的值为:TC3-HMAC-SHA256 Credential=AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******2019-02-25cvmtc3_request, SignedHeaders=content-type;host, Signature=2230eefd229f582d8b1b891af7107b91597240707d778ab3738f756258d7652c最终完整的调用信息如下:POST https:cvm.tencentcloudapi.comAuthorization: TC3-HMAC-SHA256 Credential=AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******2019-02-25cvmtc3_request, SignedHeaders=content-type;host, Signature=2230eefd229f582d8b1b891af7107b91597240707d778ab3738f756258d7652cContent-Type: applicationjson; charset=utf-8Host: cvm.tencentcloudapi.comX-TC-Action: DescribeInstancesX-TC-Version: 2017-03-12X-TC-Timestamp: 1551113065X-TC-Region: ap-guangzhou {"Limit": 1, "Filters": , "Name": "instance-name"}]}签名演示在实际调用 API 3.0 时,推荐使用配套的腾讯云 SDK 3.0 ,SDK 封装了签名的过程,开发时只关注产品提供的具体接口即可。详细信息参见 SDK 中心。当前支持的编程语言有: PythonJavaPHPGoNodeJS.NETC++ 为了更清楚的解释签名过程,下面以实际编程语言为例,将上述的签名过程具体实现。请求的域名、调用的接口和参数的取值都以上述签名过程为准,代码只为解释签名过程,并不具备通用性,实际开发请尽量使用 SDK。Javaimport java.nio.charset.Charset;import java.nio.charset.StandardCharsets;import java.security.MessageDigest;import java.text.SimpleDateFormat;import java.util.Date;import java.util.TimeZone;import java.util.TreeMap;import javax.crypto.Mac;import javax.crypto.spec.SecretKeySpec;import javax.xml.bind.DatatypeConverter; public class TencentCloudAPITC3Demo { private final static Charset UTF8 = StandardCharsets.UTF_8; private final static String SECRET_ID = "AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******"; private final static String SECRET_KEY = "Gu5t9xGARNpq86cd98joQYCN3*******"; private final static String CT_JSON = "applicationjson; charset=utf-8"; public static byte key, String msg) throws Exception { Mac mac = Mac.getInstance("HmacSHA256"); SecretKeySpec secretKeySpec = new SecretKeySpec(key, mac.getAlgorithm()); mac.init(secretKeySpec); return mac.doFinal(msg.getBytes(UTF8)); } public static String sha256Hex(String s) throws Exception { MessageDigest md = MessageDigest.getInstance("SHA-256"); byte args) throws Exception { String service = "cvm"; String host = "cvm.tencentcloudapi.com"; String region = "ap-guangzhou"; String action = "DescribeInstances"; String version = "2017-03-12"; String algorithm = "TC3-HMAC-SHA256"; String timestamp = "1551113065"; String timestamp = String.valueOf(System.currentTimeMillis() 1000); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 注意时区,否则容易出错 sdf.setTimeZone(TimeZone.getTimeZone("UTC")); String date = sdf.format(new Date(Long.valueOf(timestamp + "000"))); ************* 步骤 1:拼接规范请求串 ************* String httpRequestMethod = "POST"; String canonicalUri = ""; String canonicalQueryString = ""; String canonicalHeaders = "content-type:applicationjson; charset=utf-8n" + "host:" + host + "n"; String signedHeaders = "content-type;host"; String payload = "{"Limit": 1, "Filters": , "Name": "instance-name"}]}"; String hashedRequestPayload = sha256Hex(payload); String canonicalRequest = httpRequestMethod + "n" + canonicalUri + "n" + canonicalQueryString + "n" + canonicalHeaders + "n" + signedHeaders + "n" + hashedRequestPayload; System.out.println(canonicalRequest); ************* 步骤 2:拼接待签名字符串 ************* String credentialScope = date + "" + service + "" + "tc3_request"; String hashedCanonicalRequest = sha256Hex(canonicalRequest); String stringToSign = algorithm + "n" + timestamp + "n" + credentialScope + "n" + hashedCanonicalRequest; System.out.println(stringToSign); ************* 步骤 3:计算签名 ************* byte secretService = hmac256(secretDate, service); byte}]} # ************* 步骤 1:拼接规范请求串 *************http_request_method = "POST"canonical_uri = ""canonical_querystring = ""ct = "applicationjson; charset=utf-8"payload = json.dumps(params)canonical_headers = "content-type:%snhost:%sn" % (ct, host)signed_headers = "content-type;host"hashed_request_payload = hashlib.sha256(payload.encode("utf-8")).hexdigest()canonical_request = (http_request_method + "n" + canonical_uri + "n" + canonical_querystring + "n" + canonical_headers + "n" + signed_headers + "n" + hashed_request_payload)print(canonical_request) # ************* 步骤 2:拼接待签名字符串 *************credential_scope = date + "" + service + "" + "tc3_request"hashed_canonical_request = hashlib.sha256(canonical_request.encode("utf-8")).hexdigest()string_to_sign = (algorithm + "n" + str(timestamp) + "n" + credential_scope + "n" + hashed_canonical_request)print(string_to_sign) # ************* 步骤 3:计算签名 *************# 计算签名摘要函数def sign(key, msg): return hmac.new(key, msg.encode("utf-8"), hashlib.sha256).digest()secret_date = sign(("TC3" + secret_key).encode("utf-8"), date)secret_service = sign(secret_date, service)secret_signing = sign(secret_service, "tc3_request")signature = hmac.new(secret_signing, string_to_sign.encode("utf-8"), hashlib.sha256).hexdigest()print(signature) # ************* 步骤 4:拼接 Authorization *************authorization = (algorithm + " " + "Credential=" + secret_id + "" + credential_scope + ", " + "SignedHeaders=" + signed_headers + ", " + "Signature=" + signature)print(authorization) print('curl -X POST ' + endpoint + ' -H "Authorization: ' + authorization + '"' + ' -H "Content-Type: applicationjson; charset=utf-8"' + ' -H "Host: ' + host + '"' + ' -H "X-TC-Action: ' + action + '"' + ' -H "X-TC-Timestamp: ' + str(timestamp) + '"' + ' -H "X-TC-Version: ' + version + '"' + ' -H "X-TC-Region: ' + region + '"' + " -d '" + payload + "'")Golangpackage main import ( "cryptohmac" "cryptosha256" "encodinghex" "fmt" "time") func sha256hex(s string) string { b := sha256.Sum256()} func hmacsha256(s, key string) string { hashed := hmac.New(sha256.New, byte(s)) return string(hashed.Sum(nil))} func main() { secretId := "AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******" secretKey := "Gu5t9xGARNpq86cd98joQYCN3*******" host := "cvm.tencentcloudapi.com" algorithm := "TC3-HMAC-SHA256" service := "cvm" version := "2017-03-12" action := "DescribeInstances" region := "ap-guangzhou" var timestamp int64 = time.Now().Unix() var timestamp int64 = 1551113065 step 1: build canonical request string httpRequestMethod := "POST" canonicalURI := "" canonicalQueryString := "" canonicalHeaders := "content-type:applicationjson; charset=utf-8n" + "host:" + host + "n" signedHeaders := "content-type;host" payload := `{"Limit": 1, "Filters": , "Name": "instance-name"}]}` hashedRequestPayload := sha256hex(payload) canonicalRequest := fmt.Sprintf("%sn%sn%sn%sn%sn%s", httpRequestMethod, canonicalURI, canonicalQueryString, canonicalHeaders, signedHeaders, hashedRequestPayload) fmt.Println(canonicalRequest) step 2: build string to sign date := time.Unix(timestamp, 0).UTC().Format("2006-01-02") credentialScope := fmt.Sprintf("%s%stc3_request", date, service) hashedCanonicalRequest := sha256hex(canonicalRequest) string2sign := fmt.Sprintf("%sn%dn%sn%s", algorithm, timestamp, credentialScope, hashedCanonicalRequest) fmt.Println(string2sign) step 3: sign string secretDate := hmacsha256(date, "TC3"+secretKey) secretService := hmacsha256(service, secretDate) secretSigning := hmacsha256("tc3_request", secretService) signature := hex.EncodeToString(, "Name": "instance-name"}]}';$hashedRequestPayload = hash("SHA256", $payload);$canonicalRequest = $httpRequestMethod."n" .$canonicalUri."n" .$canonicalQueryString."n" .$canonicalHeaders."n" .$signedHeaders."n" .$hashedRequestPayload;echo $canonicalRequest.PHP_EOL; step 2: build string to sign$date = gmdate("Y-m-d", $timestamp);$credentialScope = $date."".$service."tc3_request";$hashedCanonicalRequest = hash("SHA256", $canonicalRequest);$stringToSign = $algorithm."n" .$timestamp."n" .$credentialScope."n" .$hashedCanonicalRequest;echo $stringToSign.PHP_EOL; step 3: sign string$secretDate = hash_hmac("SHA256", $date, "TC3".$secretKey, true);$secretService = hash_hmac("SHA256", $service, $secretDate, true);$secretSigning = hash_hmac("SHA256", "tc3_request", $secretService, true);$signature = hash_hmac("SHA256", $stringToSign, $secretSigning);echo $signature.PHP_EOL; step 4: build authorization$authorization = $algorithm ." Credential=".$secretId."".$credentialScope .", SignedHeaders=content-type;host, Signature=".$signature;echo $authorization.PHP_EOL; $curl = "curl -X POST https:".$host .' -H "Authorization: '.$authorization.'"' .' -H "Content-Type: applicationjson; charset=utf-8"' .' -H "Host: '.$host.'"' .' -H "X-TC-Action: '.$action.'"' .' -H "X-TC-Timestamp: '.$timestamp.'"' .' -H "X-TC-Version: '.$version.'"' .' -H "X-TC-Region: '.$region.'"' ." -d '".$payload."'";echo $curl.PHP_EOL;Ruby# -*- coding: UTF-8 -*-# require ruby>=2.3.0require 'digest'require 'json'require 'time'require 'openssl' # 密钥参数secret_id = 'AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******'secret_key = 'Gu5t9xGARNpq86cd98joQYCN3*******' service = 'cvm'host = 'cvm.tencentcloudapi.com'endpoint = 'https:' + hostregion = 'ap-guangzhou'action = 'DescribeInstances'version = '2017-03-12'algorithm = 'TC3-HMAC-SHA256'# timestamp = Time.now.to_itimestamp = 1551113065date = Time.at(timestamp).utc.strftime('%Y-%m-%d') # ************* 步骤 1:拼接规范请求串 *************http_request_method = 'POST'canonical_uri = ''canonical_querystring = ''canonical_headers = "content-type:applicationjson; charset=utf-8nhost:#{host}n"signed_headers = 'content-type;host'# params = { 'Limit' => 1, 'Filters' => }] }# payload = JSON.generate(params, { 'ascii_only' => true, 'space' => ' ' })# json will generate in random order, to get specified result in example, we hard-code it here.payload = '{"Limit": 1, "Filters": , "Name": "instance-name"}]}'hashed_request_payload = Digest::SHA256.hexdigest(payload)canonical_request = .join("n") puts canonical_request # ************* 步骤 2:拼接待签名字符串 *************credential_scope = date + '' + service + '' + 'tc3_request'hashed_request_payload = Digest::SHA256.hexdigest(canonical_request)string_to_sign = .join("n")puts string_to_sign # ************* 步骤 3:计算签名 *************digest = OpenSSL::Digest.new('sha256')secret_date = OpenSSL::HMAC.digest(digest, 'TC3' + secret_key, date)secret_service = OpenSSL::HMAC.digest(digest, secret_date, service)secret_signing = OpenSSL::HMAC.digest(digest, secret_service, 'tc3_request')signature = OpenSSL::HMAC.hexdigest(digest, secret_signing, string_to_sign)puts signature # ************* 步骤 4:拼接 Authorization *************authorization = "#{algorithm} Credential=#{secret_id}#{credential_scope}, SignedHeaders=#{signed_headers}, Signature=#{signature}"puts authorization puts 'curl -X POST ' + endpoint + ' -H "Authorization: ' + authorization + '"' + ' -H "Content-Type: applicationjson; charset=utf-8"' + ' -H "Host: ' + host + '"' + ' -H "X-TC-Action: ' + action + '"' + ' -H "X-TC-Timestamp: ' + timestamp.to_s + '"' + ' -H "X-TC-Version: ' + version + '"' + ' -H "X-TC-Region: ' + region + '"' + " -d '" + payload + "'"DotNetusing System;using System.Collections.Generic;using System.Security.Cryptography;using System.Text; public class Application{ public static string SHA256Hex(string s) { using (SHA256 algo = SHA256.Create()) { byte.ToString("x2")); } return builder.ToString(); } } public static byte key, byte tc3SecretKey = Encoding.UTF8.GetBytes("TC3" + secretkey); byte secretService = HmacSHA256(secretDate, Encoding.UTF8.GetBytes(service)); byte signatureBytes = HmacSHA256(secretSigning, Encoding.UTF8.GetBytes(stringToSign)); string signature = BitConverter.ToString(signatureBytes).Replace("-", "").ToLower(); Console.WriteLine(signature); ************* 步骤 4:拼接 Authorization ************* string authorization = algorithm + " " + "Credential=" + secretid + "" + credentialScope + ", " + "SignedHeaders=" + signedHeaders + ", " + "Signature=" + signature; Console.WriteLine(authorization); Dictionary<string, string> headers = new Dictionary<string, string>(); headers.Add("Authorization", authorization); headers.Add("Host", endpoint); headers.Add("Content-Type", contentType + "; charset=utf-8"); headers.Add("X-TC-Timestamp", requestTimestamp.ToString()); headers.Add("X-TC-Version", version); headers.Add("X-TC-Action", action); headers.Add("X-TC-Region", region); return headers; } public static void Main(string, "Name": "instance-name"}]}"; Dictionary<string, string> headers = BuildHeaders(SECRET_ID, SECRET_KEY, service , endpoint, region, action, version, date, requestPayload); Console.WriteLine("POST https:cvm.tencentcloudapi.com"); foreach (KeyValuePair<string, string> kv in headers) { Console.WriteLine(kv.Key + ": " + kv.Value); } Console.WriteLine(); Console.WriteLine(requestPayload); }} NodeJSconst crypto = require('crypto'); function sha256(message, secret = '', encoding) { const hmac = crypto.createHmac('sha256', secret) return hmac.update(message).digest(encoding)} function getHash(message, encoding = 'hex') { const hash = crypto.createHash('sha256') return hash.update(message).digest(encoding)} function getDate(timestamp) { const date = new Date(timestamp * 1000) const year = date.getUTCFullYear() const month = ('0' + (date.getUTCMonth() + 1)).slice(-2) const day = ('0' + date.getUTCDate()).slice(-2) return `${year}-${month}-${day}`} function main(){ 密钥参数 const SECRET_ID = "AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******" const SECRET_KEY = "Gu5t9xGARNpq86cd98joQYCN3*******" const endpoint = "cvm.tencentcloudapi.com" const service = "cvm" const region = "ap-guangzhou" const action = "DescribeInstances" const version = "2017-03-12" const timestamp = getTime() const timestamp = 1551113065 时间处理, 获取世界时间日期 const date = getDate(timestamp) ************* 步骤 1:拼接规范请求串 ************* const signedHeaders = "content-type;host" const payload = "{"Limit": 1, "Filters": , "Name": "instance-name"}]}" const hashedRequestPayload = getHash(payload); const httpRequestMethod = "POST" const canonicalUri = "" const canonicalQueryString = "" const canonicalHeaders = "content-type:applicationjson; charset=utf-8n" + "host:" + endpoint + "n" const canonicalRequest = httpRequestMethod + "n" + canonicalUri + "n" + canonicalQueryString + "n" + canonicalHeaders + "n" + signedHeaders + "n" + hashedRequestPayload console.log(canonicalRequest) ************* 步骤 2:拼接待签名字符串 ************* const algorithm = "TC3-HMAC-SHA256" const hashedCanonicalRequest = getHash(canonicalRequest); const credentialScope = date + "" + service + "" + "tc3_request" const stringToSign = algorithm + "n" + timestamp + "n" + credentialScope + "n" + hashedCanonicalRequest console.log(stringToSign) ************* 步骤 3:计算签名 ************* const kDate = sha256(date, 'TC3' + SECRET_KEY) const kService = sha256(service, kDate) const kSigning = sha256('tc3_request', kService) const signature = sha256(stringToSign, kSigning, 'hex') console.log(signature) ************* 步骤 4:拼接 Authorization ************* const authorization = algorithm + " " + "Credential=" + SECRET_ID + "" + credentialScope + ", " + "SignedHeaders=" + signedHeaders + ", " + "Signature=" + signature console.log(authorization) const curlcmd = 'curl -X POST ' + "https:" + endpoint + ' -H "Authorization: ' + authorization + '"' + ' -H "Content-Type: applicationjson; charset=utf-8"' + ' -H "Host: ' + endpoint + '"' + ' -H "X-TC-Action: ' + action + '"' + ' -H "X-TC-Timestamp: ' + timestamp.toString() + '"' + ' -H "X-TC-Version: ' + version + '"' + ' -H "X-TC-Region: ' + region + '"' + " -d '" + payload + "'" console.log(curlcmd)}main()C++#include <iostream>#include <iomanip>#include <sstream>#include <string>#include <stdio.h>#include <time.h>#include <opensslsha.h>#include <opensslhmac.h> using namespace std; string get_data(int64_t &timestamp){ string utcDate; char buff = {0}; time_t timenow; struct tm sttime; sttime = *gmtime(&timestamp); strftime(buff, sizeof(buff), "%Y-%m-%d", &sttime); utcDate = string(buff); return utcDate;} string int2str(int64_t n){ std::stringstream ss; ss << n; return ss.str();} string sha256Hex(const string &str){ char buf; unsigned char hash; SHA256_CTX sha256; SHA256_Init(&sha256); SHA256_Update(&sha256, str.c_str(), str.size()); SHA256_Final(hash, &sha256); std::string NewString = ""; for(int i = 0; i < SHA256_DIGEST_LENGTH; i++) { snprintf(buf, sizeof(buf), "%02x", hash); NewString = NewString + buf; } return NewString;} string HmacSha256(const string &key, const string &input){ unsigned char hash; HMAC_CTX *h;#if OPENSSL_VERSION_NUMBER < 0x10100000L HMAC_CTX hmac; HMAC_CTX_init(&hmac); h = &hmac;#else h = HMAC_CTX_new();#endif HMAC_Init_ex(h, &key, key.length(), EVP_sha256(), NULL); HMAC_Update(h, ( unsigned char* )&input, input.length()); unsigned int len = 32; HMAC_Final(h, hash, &len); #if OPENSSL_VERSION_NUMBER < 0x10100000L HMAC_CTX_cleanup(h);#else HMAC_CTX_free(h);#endif std::stringstream ss; ss << std::setfill('0'); for (int i = 0; i < len; i++) { ss << hash; } return (ss.str());} string HexEncode(const string &input){ static const char* const lut = "0123456789abcdef"; size_t len = input.length(); string output; output.reserve(2 * len); for (size_t i = 0; i < len; ++i) { const unsigned char c = input; output.push_back(lut); output.push_back(lut); } return output;} int main(){ 密钥参数 string SECRET_ID = "AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******"; string SECRET_KEY = "Gu5t9xGARNpq86cd98joQYCN3*******"; string service = "cvm"; string host = "cvm.tencentcloudapi.com"; string region = "ap-guangzhou"; string action = "DescribeInstances"; string version = "2017-03-12"; int64_t timestamp = 1551113065; string date = get_data(timestamp); ************* 步骤 1:拼接规范请求串 ************* string httpRequestMethod = "POST"; string canonicalUri = ""; string canonicalQueryString = ""; string canonicalHeaders = "content-type:applicationjson; charset=utf-8nhost:" + host + "n"; string signedHeaders = "content-type;host"; string payload = "{"Limit": 1, "Filters": , "Name": "instance-name"}]}"; string hashedRequestPayload = sha256Hex(payload); string canonicalRequest = httpRequestMethod + "n" + canonicalUri + "n" + canonicalQueryString + "n" + canonicalHeaders + "n" + signedHeaders + "n" + hashedRequestPayload; cout << canonicalRequest << endl; ************* 步骤 2:拼接待签名字符串 ************* string algorithm = "TC3-HMAC-SHA256"; string RequestTimestamp = int2str(timestamp); string credentialScope = date + "" + service + "" + "tc3_request"; string hashedCanonicalRequest = sha256Hex(canonicalRequest); string stringToSign = algorithm + "n" + RequestTimestamp + "n" + credentialScope + "n" + hashedCanonicalRequest; cout << stringToSign << endl; ************* 步骤 3:计算签名 *************** string kKey = "TC3" + SECRET_KEY; string kDate = HmacSha256(kKey, date); string kService = HmacSha256(kDate, service); string kSigning = HmacSha256(kService, "tc3_request"); string signature = HexEncode(HmacSha256(kSigning, stringToSign)); cout << signature << endl; ************* 步骤 4:拼接 Authorization ************* string authorization = algorithm + " " + "Credential=" + SECRET_ID + "" + credentialScope + ", " + "SignedHeaders=" + signedHeaders + ", " + "Signature=" + signature; cout << authorization << endl; string curlcmd = "curl -X POST https:" + host + "n" + " -H "Authorization: " + authorization + "n" + " -H "Content-Type: applicationjson; charset=utf-8"" + "n" + " -H "Host: " + host + "n" + " -H "X-TC-Action: " + action + "n" + " -H "X-TC-Timestamp: " + RequestTimestamp + "n" + " -H "X-TC-Version: " + version + "n" + " -H "X-TC-Region: " + region + "n" + " -d '" + payload; cout << curlcmd << endl; return 0;};签名失败存在以下签名失败的错误码,请根据实际情况处理。 错误码错误描述 AuthFailure.SignatureExpire签名过期。Timestamp 与服务器接收到请求的时间相差不得超过五分钟。 AuthFailure.SecretIdNotFound密钥不存在。请到控制台查看密钥是否被禁用,是否少复制了字符或者多了字符。 AuthFailure.SignatureFailure签名错误。可能是签名计算错误,或者签名与实际发送的内容不相符合,也有可能是密钥 SecretKey 错误导致的。 AuthFailure.TokenFailure临时证书 Token 错误。 AuthFailure.InvalidSecretId密钥非法(不是云 API 密钥类型)。
    来自:
  • 签名方法

    签名方法 v1 简单易用,但是功能和安全性都不如签名方法 v3,推荐使用签名方法 v3。首次接触,建议使用 API Explorer 中的“签名串生成”功能,选择签名版本为“API 3.0 签名 v1”,可以生成签名过程进行验证,并提供了部分编程语言的签名示例,也可直接生成 SDK 代码。推荐使用腾讯云 API 配套的 7 种常见的编程语言 SDK,已经封装了签名和请求过程,均已开源,支持 Python、Java、PHP、Go、NodeJS、.NET、C++。 推荐使用 API Explorer 点击调试 您可以通过 API Explorer 的【签名串生成】模块查看每个接口签名的生成过程。 腾讯云 API 会对每个访问请求进行身份验证,即每个请求都需要在公共请求参数中包含签名信息(Signature)以验证请求者身份。签名信息由安全凭证生成,安全凭证包括 SecretId 和 SecretKey;若用户还没有安全凭证,请前往 云API密钥页面 申请,否则无法调用云 API 接口。1. 申请安全凭证在第一次使用云 API 之前,请前往 云 API 密钥页面 申请安全凭证。安全凭证包括 SecretId 和 SecretKey: SecretId 用于标识 API 调用者身份SecretKey 用于加密签名字符串和服务器端验证签名字符串的密钥。用户必须严格保管安全凭证,避免泄露。 申请安全凭证的具体步骤如下: 登录 腾讯云管理中心控制台 。前往 云 API 密钥 的控制台页面在 云 API 密钥 页面,单击【新建密钥】即可以创建一对 SecretIdSecretKey。 注意:每个账号最多可以拥有两对 SecretIdSecretKey。2. 生成签名串有了安全凭证SecretId 和 SecretKey后,就可以生成签名串了。以下是使用签名方法 v1 生成签名串的详细过程:假设用户的 SecretId 和 SecretKey 分别是: SecretId: AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******SecretKey: Gu5t9xGARNpq86cd98joQYCN3******* 注意:这里只是示例,请根据用户实际申请的 SecretId 和 SecretKey 进行后续操作!以云服务器查看实例列表(DescribeInstances)请求为例,当用户调用这一接口时,其请求参数可能如下: 参数名称中文参数值 Action方法名DescribeInstances SecretId密钥 IDAKIDz8krbsJ5yKBZQpn74WFkmLPx3******* Timestamp当前时间戳1465185768 Nonce随机正整数11886 Region实例所在区域ap-guangzhou InstanceIds.0待查询的实例 IDins-09dx96dg Offset偏移量0 Limit最大允许输出20 Version接口版本号2017-03-12 2.1. 对参数排序首先对所有请求参数按参数名的字典序( ASCII 码)升序排序。注意:1)只按参数名进行排序,参数值保持对应即可,不参与比大小;2)按 ASCII 码比大小,如 InstanceIds.2 要排在 InstanceIds.12 后面,不是按字母表,也不是按数值。用户可以借助编程语言中的相关排序函数来实现这一功能,如 PHP 中的 ksort 函数。上述示例参数的排序结果如下:{ 'Action' : 'DescribeInstances', 'InstanceIds.0' : 'ins-09dx96dg', 'Limit' : 20, 'Nonce' : 11886, 'Offset' : 0, 'Region' : 'ap-guangzhou', 'SecretId' : 'AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******', 'Timestamp' : 1465185768, 'Version': '2017-03-12',}使用其它程序设计语言开发时,可对上面示例中的参数进行排序,得到的结果一致即可。2.2. 拼接请求字符串此步骤生成请求字符串。将把上一步排序好的请求参数格式化成“参数名称=参数值”的形式,如对 Action 参数,其参数名称为 "Action" ,参数值为 "DescribeInstances" ,因此格式化后就为 Action=DescribeInstances 。注意:“参数值”为原始值而非 url 编码后的值。然后将格式化后的各个参数用"&"拼接在一起,最终生成的请求字符串为:Action=DescribeInstances&InstanceIds.0=ins-09dx96dg&Limit=20&Nonce=11886&Offset=0&Region=ap-guangzhou&SecretId=AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******&Timestamp=1465185768&Version=2017-03-122.3. 拼接签名原文字符串此步骤生成签名原文字符串。签名原文字符串由以下几个参数构成: 请求方法: 支持 POST 和 GET 方式,这里使用 GET 请求,注意方法为全大写。请求主机:查看实例列表(DescribeInstances)的请求域名为:cvm.tencentcloudapi.com。实际的请求域名根据接口所属模块的不同而不同,详见各接口说明。请求路径: 当前版本云API的请求路径固定为 。请求字符串: 即上一步生成的请求字符串。 签名原文串的拼接规则为:请求方法 + 请求主机 +请求路径 + ? + 请求字符串。示例的拼接结果为:GETcvm.tencentcloudapi.com?Action=DescribeInstances&InstanceIds.0=ins-09dx96dg&Limit=20&Nonce=11886&Offset=0&Region=ap-guangzhou&SecretId=AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******&Timestamp=1465185768&Version=2017-03-122.4. 生成签名串此步骤生成签名串。首先使用 HMAC-SHA1 算法对上一步中获得的签名原文字符串进行签名,然后将生成的签名串使用 Base64 进行编码,即可获得最终的签名串。具体代码如下,以 PHP 语言为例:$secretKey = 'Gu5t9xGARNpq86cd98joQYCN3*******';$srcStr = 'GETcvm.tencentcloudapi.com?Action=DescribeInstances&InstanceIds.0=ins-09dx96dg&Limit=20&Nonce=11886&Offset=0&Region=ap-guangzhou&SecretId=AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******&Timestamp=1465185768&Version=2017-03-12';$signStr = base64_encode(hash_hmac('sha1', $srcStr, $secretKey, true));echo $signStr;最终得到的签名串为:zmmjn35mikh6pM3V7sUEuX4wyYM=使用其它程序设计语言开发时,可用上面示例中的原文进行签名验证,得到的签名串与例子中的一致即可。3. 签名串编码生成的签名串并不能直接作为请求参数,需要对其进行 URL 编码。如上一步生成的签名串为 zmmjn35mikh6pM3V7sUEuX4wyYM= ,最终得到的签名串请求参数(Signature)为:zmmjn35mikh6pM3V7sUEuX4wyYM%3D,它将用于生成最终的请求 URL。注意:如果用户的请求方法是 GET,或者请求方法为 POST 同时 Content-Type 为 applicationx-www-form-urlencoded,则发送请求时所有请求参数的值均需要做 URL 编码,参数键和=符号不需要编码。非 ASCII 字符在 URL 编码前需要先以 UTF-8 进行编码。注意:有些编程语言的网络库会自动为所有参数进行 urlencode,在这种情况下,就不需要对签名串进行 URL 编码了,否则两次 URL 编码会导致签名失败。注意:其他参数值也需要进行编码,编码采用 RFC 3986。使用 %XY 对特殊字符例如汉字进行百分比编码,其中“X”和“Y”为十六进制字符(0-9 和大写字母 A-F),使用小写将引发错误。4. 签名失败根据实际情况,存在以下签名失败的错误码,请根据实际情况处理。 错误代码错误描述 AuthFailure.SignatureExpire签名过期 AuthFailure.SecretIdNotFound密钥不存在 AuthFailure.SignatureFailure签名错误 AuthFailure.TokenFailuretoken 错误 AuthFailure.InvalidSecretId密钥非法(不是云 API 密钥类型) 5. 签名演示在实际调用 API 3.0 时,推荐使用配套的腾讯云 SDK 3.0 ,SDK 封装了签名的过程,开发时只关注产品提供的具体接口即可。详细信息参见 SDK 中心。当前支持的编程语言有: PythonJavaPHPGoNodeJS.NETC++ 为了更清楚的解释签名过程,下面以实际编程语言为例,将上述的签名过程具体实现。请求的域名、调用的接口和参数的取值都以上述签名过程为准,代码只为解释签名过程,并不具备通用性,实际开发请尽量使用 SDK 。最终输出的 url 可能为:https:cvm.tencentcloudapi.com?Action=DescribeInstances&InstanceIds.0=ins-09dx96dg&Limit=20&Nonce=11886&Offset=0&Region=ap-guangzhou&SecretId=AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******&Signature=zmmjn35mikh6pM3V7sUEuX4wyYM%3D&Timestamp=1465185768&Version=2017-03-12。注意:由于示例中的密钥是虚构的,时间戳也不是系统当前时间,因此如果将此 url 在浏览器中打开或者用 curl 等命令调用时会返回鉴权错误:签名过期。为了得到一个可以正常返回的 url ,需要修改示例中的 SecretId 和 SecretKey 为真实的密钥,并使用系统当前时间戳作为 Timestamp 。注意:在下面的示例中,不同编程语言,甚至同一语言每次执行得到的 url 可能都有所不同,表现为参数的顺序不同,但这并不影响正确性。只要所有参数都在,且签名计算正确即可。注意:以下代码仅适用于 API 3.0,不能直接用于其他的签名流程,即使是旧版的 API ,由于存在细节差异也会导致签名计算错误,请以对应的实际文档为准。Javaimport java.io.UnsupportedEncodingException;import java.net.URLEncoder;import java.util.Random;import java.util.TreeMap;import javax.crypto.Mac;import javax.crypto.spec.SecretKeySpec;import javax.xml.bind.DatatypeConverter; public class TencentCloudAPIDemo { private final static String CHARSET = "UTF-8"; public static String sign(String s, String key, String method) throws Exception { Mac mac = Mac.getInstance(method); SecretKeySpec secretKeySpec = new SecretKeySpec(key.getBytes(CHARSET), mac.getAlgorithm()); mac.init(secretKeySpec); byte args) throws Exception { TreeMap<String, Object> params = new TreeMap<String, Object>(); TreeMap可以自动排序 实际调用时应当使用随机数,例如:params.put("Nonce", new Random().nextInt(java.lang.Integer.MAX_VALUE)); params.put("Nonce", 11886); 公共参数 实际调用时应当使用系统当前时间,例如: params.put("Timestamp", System.currentTimeMillis() 1000); params.put("Timestamp", 1465185768); 公共参数 params.put("SecretId", "AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******"); 公共参数 params.put("Action", "DescribeInstances"); 公共参数 params.put("Version", "2017-03-12"); 公共参数 params.put("Region", "ap-guangzhou"); 公共参数 params.put("Limit", 20); 业务参数 params.put("Offset", 0); 业务参数 params.put("InstanceIds.0", "ins-09dx96dg"); 业务参数 params.put("Signature", sign(getStringToSign(params), "Gu5t9xGARNpq86cd98joQYCN3*******", "HmacSHA1")); 公共参数 System.out.println(getUrl(params)); }}Python注意:如果是在 Python 2 环境中运行,需要先安装 requests 依赖包: pip install requests 。# -*- coding: utf8 -*-import base64import hashlibimport hmacimport time import requests secret_id = "AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******"secret_key = "Gu5t9xGARNpq86cd98joQYCN3*******" def get_string_to_sign(method, endpoint, params): s = method + endpoint + "?" query_str = "&".join("%s=%s" % (k, params) for k in sorted(params)) return s + query_str def sign_str(key, s, method): hmac_str = hmac.new(key.encode("utf8"), s.encode("utf8"), method).digest() return base64.b64encode(hmac_str) if __name__ == '__main__': endpoint = "cvm.tencentcloudapi.com" data = { 'Action' : 'DescribeInstances', 'InstanceIds.0' : 'ins-09dx96dg', 'Limit' : 20, 'Nonce' : 11886, 'Offset' : 0, 'Region' : 'ap-guangzhou', 'SecretId' : secret_id, 'Timestamp' : 1465185768, # int(time.time()) 'Version': '2017-03-12' } s = get_string_to_sign("GET", endpoint, data) data = sign_str(secret_key, s, hashlib.sha1) print(data) # 此处会实际调用,成功后可能产生计费 # resp = requests.get("https:" + endpoint, params=data) # print(resp.url) Golangpackage main import ( "bytes" "cryptohmac" "cryptosha1" "encodingbase64" "fmt" "sort" "strconv") func main() { secretId := "AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******" secretKey := "Gu5t9xGARNpq86cd98joQYCN3*******" params := mapstring{ "Nonce": "11886", "Timestamp": strconv.Itoa(1465185768), "Region": "ap-guangzhou", "SecretId": secretId, "Version": "2017-03-12", "Action": "DescribeInstances", "InstanceIds.0": "ins-09dx96dg", "Limit": strconv.Itoa(20), "Offset": strconv.Itoa(0), } var buf bytes.Buffer buf.WriteString("GET") buf.WriteString("cvm.tencentcloudapi.com") buf.WriteString("") buf.WriteString("?") sort keys by ascii asc order keys := make( buf.WriteString(k) buf.WriteString("=") buf.WriteString(params) buf.WriteString("&") } buf.Truncate(buf.Len() - 1) hashed := hmac.New(sha1.New, = 11886;rand();$param = 1465185768;time();$param = "ap-guangzhou";$param = $secretId;$param = "2017-03-12";$param = "DescribeInstances";$param = "ins-09dx96dg";$param = 20;$param = 0; ksort($param); $signStr = "GETcvm.tencentcloudapi.com?";foreach ( $param as $key => $value ) { $signStr = $signStr . $key . "=" . $value . "&";}$signStr = substr($signStr, 0, -1); $signature = base64_encode(hash_hmac("sha1", $signStr, $secretKey, true));echo $signature.PHP_EOL; need to install and enable curl extension in php.ini $param = $signature; $url = "https:cvm.tencentcloudapi.com?".http_build_query($param); echo $url.PHP_EOL; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); $output = curl_exec($ch); curl_close($ch); echo json_decode($output);Ruby# -*- coding: UTF-8 -*-# require ruby>=2.3.0require 'time'require 'openssl'require 'base64' secret_id = "AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******"secret_key = "Gu5t9xGARNpq86cd98joQYCN3*******" method = 'GET'endpoint = 'cvm.tencentcloudapi.com'data = { 'Action' => 'DescribeInstances', 'InstanceIds.0' => 'ins-09dx96dg', 'Limit' => 20, 'Nonce' => 11886, 'Offset' => 0, 'Region' => 'ap-guangzhou', 'SecretId' => secret_id, 'Timestamp' => 1465185768, # Time.now.to_i 'Version' => '2017-03-12',}sign = method + endpoint + '?'params = }=#{item}"endsign += params.join('&')digest = OpenSSL::Digest.new('sha1')data = Base64.encode64(OpenSSL::HMAC.digest(digest, secret_key, sign))puts data # require 'nethttp'# uri = URI('https:' + endpoint)# uri.query = URI.encode_www_form(data)# p uri# res = Net::HTTP.get_response(uri)# puts res.bodyDotNetusing System;using System.Collections.Generic;using System.Net;using System.Security.Cryptography;using System.Text; public class Application { public static string Sign(string signKey, string secret) { string signRet = string.Empty; using (HMACSHA1 mac = new HMACSHA1(Encoding.UTF8.GetBytes(signKey))) { byte); } retStr += v.TrimEnd('&'); return retStr; } public static void Main(string = escape(params); const url_strParam = sort_params(params) return "https:" + endpoint + "?" + url_strParam.slice(1);} function formatSignString(reqMethod, endpoint, path, strParam){ let strSign = reqMethod + endpoint + path + "?" + strParam.slice(1); return strSign;}function sha1(secretKey, strsign){ let signMethodMap = {'HmacSHA1': "sha1"}; let hmac = crypto.createHmac(signMethodMap, secretKey || ""); return hmac.update(Buffer.from(strsign, 'utf8')).digest('base64')} function sort_params(params){ let strParam = ""; let keys = Object.keys(params); keys.sort(); for (let k in keys) { k = k.replace(_g, '.'); strParam += ("&" + keys + "=" + params]); } return strParam} function main(){ 密钥参数 const SECRET_ID = "AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******" const SECRET_KEY = "Gu5t9xGARNpq86cd98joQYCN3*******" const endpoint = "cvm.tencentcloudapi.com" const Region = "ap-guangzhou" const Version = "2017-03-12" const Action = "DescribeInstances" const Timestamp = 1465185768 时间戳 2016-06-06 12:02:48, 此参数作为示例,以实际为准 const Timestamp = Math.round(Date.now() 1000) const Nonce = 11886 随机正整数 const nonce = Math.round(Math.random() * 65535) let params = {}; params = Action; params = 'ins-09dx96dg'; params = 20; params = 0; params = Nonce; params = Region; params = SECRET_ID; params = Timestamp; params = Version; 1. 对参数排序,并拼接请求字符串 strParam = sort_params(params) 2. 拼接签名原文字符串 const reqMethod = "GET"; const path = ""; strSign = formatSignString(reqMethod, endpoint, path, strParam) console.log(strSign) 3. 生成签名串 params = sha1(SECRET_KEY, strSign) console.log(params) 4. 进行url编码并拼接请求url const req_url = get_req_url(params, endpoint) console.log(params) console.log(req_url)}main()
    来自:
  • 返回结果

    注意:目前只要请求被服务端正常处理了,响应的 HTTP 状态码均为200。例如返回的消息体里的错误码是签名失败,但 HTTP 状态码是200,而不是401。正确返回结果以云服务器的接口查看实例状态列表 (DescribeInstancesStatus) 2017-03-12 版本为例,若调用成功,其可能的返回如下为:{ "Response": { "TotalCount": 0, "InstanceStatusSet": [], "RequestId": "b5b41468-520d-4192-b42f-595cc34b6c1c" }}Response 及其内部的 RequestId 是固定的字段,无论请求成功与否,只要 API 处理了,则必定会返回。RequestId 用于一个 API 请求的唯一标识,如果 API 出现异常,可以联系我们,并提供该 ID 来解决问题。除了固定的字段外,其余均为具体接口定义的字段,不同的接口所返回的字段参见接口文档中的定义。此例中的 TotalCount 和 InstanceStatusSet 均为 DescribeInstancesStatus 接口定义的字段,由于调用请求的用户暂时还没有云服务器实例,因此 TotalCount 在此情况下的返回值为 0, InstanceStatusSet 列表为空。 错误返回结果若调用失败,其返回值示例如下为:{ "Response": { "Error": { "Code": "AuthFailure.SignatureFailure", "Message": "The provided credentials could not be validated. Please check your signature is correct." }, "RequestId": "ed93f3cb-f35e-473f-b9f3-0d451b8b79c6" }}Error 的出现代表着该请求调用失败。Error 字段连同其内部的 Code 和 Message 字段在调用失败时是必定返回的。Code 表示具体出错的错误码,当请求出错时可以先根据该错误码在公共错误码和当前接口对应的错误码列表里面查找对应原因和解决方案。Message 显示出了这个错误发生的具体原因,随着业务发展或体验优化,此文本可能会经常保持变更或更新,用户不应依赖这个返回值。RequestId 用于一个 API 请求的唯一标识,如果 API 出现异常,可以联系我们,并提供该 ID 来解决问题。 公共错误码返回结果中如果存在 Error 字段,则表示调用 API 接口失败。 Error 中的 Code 字段表示错误码,所有业务都可能出现的错误码为公共错误码。完整的错误码列表请参考本产品“API 文档”目录下的“错误码”页面。
    来自:
  • 获取用户可用资源限制

    1. 接口描述接口请求域名: cat.tencentcloudapi.com 。获取用户可用资源限制默认接口请求频率限制:300次秒。 推荐使用 API Explorer 点击调试 API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。 2. 输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。 参数名称必选类型描述 Action是String公共参数,本接口取值:DescribeUserLimit。 Version是String公共参数,本接口取值:2018-04-09。 Region否String公共参数,本接口不需要传递此参数。 3. 输出参数 参数名称类型描述 MaxTaskNumInteger用户可建立的最大任务数 MaxAgentNumInteger用户可用的最大拨测结点数 MaxGroupNumInteger用户可建立的最大拨测分组数 MinPeriodInteger用户可用的最小拨测间隔 RequestIdString唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 4. 示例示例1 获取用户可用资源限制 示例输入示例https:cat.tencentcloudapi.com?Action=DescribeUserLimit&<公共请求参数>输出示例{ Response: { MaxTaskNum: 10, MaxAgentNum: 5, MaxGroupNum: 5, MinPeriod: 5, RequestId: 88f4bf3d-7d7d-42b8-a7d3-5100436e2c46 }}5. 开发者资源腾讯云 API 平台腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。API Inspector用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。SDK云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。 Tencent Cloud SDK 3.0 for PythonTencent Cloud SDK 3.0 for JavaTencent Cloud SDK 3.0 for PHPTencent Cloud SDK 3.0 for GoTencent Cloud SDK 3.0 for NodeJSTencent Cloud SDK 3.0 for .NETTencent Cloud SDK 3.0 for C++Tencent Cloud SDK 3.0 for Ruby 命令行工具 Tencent Cloud CLI 3.0 6. 错误码以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。 错误码描述 InternalError内部错误。 InvalidParameter参数错误。 ResourceNotFound资源不存在。
    来自:
  • 查询用户的告警主题列表

    1. 接口描述接口请求域名: cat.tencentcloudapi.com 。查询用户的告警主题列表默认接口请求频率限制:300次秒。 推荐使用 API Explorer 点击调试 API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。 2. 输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。 参数名称必选类型描述 Action是String公共参数,本接口取值:DescribeAlarmTopic。 Version是String公共参数,本接口取值:2018-04-09。 Region否String公共参数,本接口不需要传递此参数。 NeedAdd否Integer如果不存在拨测相关的主题,是否自动创建一个。取值可为0, 1,默认为0 3. 输出参数 参数名称类型描述 TotalCountInteger主题个数 TopicsArray of AlarmTopic主题列表 RequestIdString唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 4. 示例示例1 查询用户的告警主题列表输入示例https:cat.tencentcloudapi.com?Action=DescribeAlarmTopic&<公共请求参数>输出示例{ Response: { TotalCount: 1, Topics: , RequestId: 80912aeb-d68e-4a3d-a8a4-af791073a275 }}5. 开发者资源腾讯云 API 平台腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。API Inspector用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。SDK云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。 Tencent Cloud SDK 3.0 for PythonTencent Cloud SDK 3.0 for JavaTencent Cloud SDK 3.0 for PHPTencent Cloud SDK 3.0 for GoTencent Cloud SDK 3.0 for NodeJSTencent Cloud SDK 3.0 for .NETTencent Cloud SDK 3.0 for C++Tencent Cloud SDK 3.0 for Ruby 命令行工具 Tencent Cloud CLI 3.0 6. 错误码以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。 错误码描述 InternalError内部错误。 InvalidParameter参数错误。 ResourceNotFound资源不存在。
    来自:
  • 查询本用户可选的拨测点列表

    1. 接口描述接口请求域名: cat.tencentcloudapi.com 。查询本用户可选的拨测点列表默认接口请求频率限制:300次秒。 推荐使用 API Explorer 点击调试 API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。 2. 输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。 参数名称必选类型描述 Action是String公共参数,本接口取值:DescribeAgents。 Version是String公共参数,本接口取值:2018-04-09。 Region否String公共参数,本接口不需要传递此参数。 3. 输出参数 参数名称类型描述 AgentsArray of CatAgent本用户可选的拨测点列表 RequestIdString唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 4. 示例示例1 查询本用户可选的拨测点列表示例输入示例https:cat.tencentcloudapi.com?Action=DescribeAgents&<公共请求参数>输出示例{ Response: { Agents: , RequestId: e28305fa-cb67-4fdf-b27f-a9383fca8108 }}5. 开发者资源腾讯云 API 平台腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。API Inspector用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。SDK云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。 Tencent Cloud SDK 3.0 for PythonTencent Cloud SDK 3.0 for JavaTencent Cloud SDK 3.0 for PHPTencent Cloud SDK 3.0 for GoTencent Cloud SDK 3.0 for NodeJSTencent Cloud SDK 3.0 for .NETTencent Cloud SDK 3.0 for C++Tencent Cloud SDK 3.0 for Ruby 命令行工具 Tencent Cloud CLI 3.0 6. 错误码以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。 错误码描述 InternalError内部错误。 InvalidParameter参数错误。 ResourceNotFound资源不存在。
    来自:
  • 验证拨测结果

    1. 接口描述接口请求域名: cat.tencentcloudapi.com 。验证拨测任务,结果验证查询(验证成功的,才建议创建拨测任务)默认接口请求频率限制:300次秒。 推荐使用 API Explorer 点击调试 API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。 2. 输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。 参数名称必选类型描述 Action是String公共参数,本接口取值:VerifyResult。 Version是String公共参数,本接口取值:2018-04-09。 Region否String公共参数,本接口不需要传递此参数。 ResultId是Integer要查询的拨测任务的结果id 3. 输出参数 参数名称类型描述 ErrorReasonString错误的原因 ResultCodeInteger错误号 RequestIdString唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 4. 示例示例1 验证拨测结果示例1输入示例https:cat.tencentcloudapi.com?Action=VerifyResult&ResultId=38&<公共请求参数>输出示例{ Response: { ResultCode: 10000, ErrorReason: DNS解析失败, RequestId: b4c35d62-7407-46db-a064-ad600970cd87 }}示例2 验证拨测结果示例2输入示例https:cat.tencentcloudapi.com?Action=VerifyResult&ResultId=1446&<公共请求参数>输出示例{ Response: { ResultCode: -2, ErrorReason: 连接失败, RequestId: ce6599b6-fe65-46b5-9b19-e9eada64aa97 }}5. 开发者资源腾讯云 API 平台腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。API Inspector用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。SDK云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。 Tencent Cloud SDK 3.0 for PythonTencent Cloud SDK 3.0 for JavaTencent Cloud SDK 3.0 for PHPTencent Cloud SDK 3.0 for GoTencent Cloud SDK 3.0 for NodeJSTencent Cloud SDK 3.0 for .NETTencent Cloud SDK 3.0 for C++Tencent Cloud SDK 3.0 for Ruby 命令行工具 Tencent Cloud CLI 3.0 6. 错误码以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。 错误码描述 InternalError内部错误。 InvalidParameter参数错误。 ResourceNotFound资源不存在。
    来自:
  • 查询拨测任务的返回码统计信息

    1. 接口描述接口请求域名: cat.tencentcloudapi.com 。查询拨测任务的返回码统计信息默认接口请求频率限制:300次秒。 推荐使用 API Explorer 点击调试 API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。 2. 输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。 参数名称必选类型描述 Action是String公共参数,本接口取值:GetReturnCodeInfo。 Version是String公共参数,本接口取值:2018-04-09。 Region否String公共参数,本接口不需要传递此参数。 TaskId是Integer正整数。验证成功的拨测任务id BeginTime是String开始时间点。格式如:2017-05-09 10:20:00,最多拉群两天的数据 EndTime是String结束时间点。格式如:2017-05-09 10:25:00,最多拉群两天的数据 Province否String省份名称的全拼 3. 输出参数 参数名称类型描述 DetailsArray of CatReturnDetail拨测失败详情列表 SummaryArray of CatReturnSummary拨测失败汇总列表 BeginTimeTimestamp开始时间 EndTimeTimestamp截至时间 RequestIdString唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 4. 示例示例1 查询拨测任务的返回码统计信息 示例输入示例https:cat.tencentcloudapi.com?Action=GetReturnCodeInfo&TaskId=260228&BeginTime=2019-12-11 10:00:00&EndTime=2019-12-11 20:30:00&<公共请求参数>输出示例{ Response: { Details: , Summary: , BeginTime: 2019-12-11 10:00:00, EndTime: 2019-12-11 20:30:00, RequestId: 37bebabf-7868-46e7-a968-9054de07b978 }}5. 开发者资源腾讯云 API 平台腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。API Inspector用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。SDK云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。 Tencent Cloud SDK 3.0 for PythonTencent Cloud SDK 3.0 for JavaTencent Cloud SDK 3.0 for PHPTencent Cloud SDK 3.0 for GoTencent Cloud SDK 3.0 for NodeJSTencent Cloud SDK 3.0 for .NETTencent Cloud SDK 3.0 for C++Tencent Cloud SDK 3.0 for Ruby 命令行工具 Tencent Cloud CLI 3.0 6. 错误码以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。 错误码描述 InternalError内部错误。 InvalidParameter参数错误。 ResourceNotFound资源不存在。
    来自:
  • 查询拨测任务的历史返回码信息

    1. 接口描述接口请求域名: cat.tencentcloudapi.com 。查询拨测任务的历史返回码信息默认接口请求频率限制:300次秒。 推荐使用 API Explorer 点击调试 API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。 2. 输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。 参数名称必选类型描述 Action是String公共参数,本接口取值:GetReturnCodeHistory。 Version是String公共参数,本接口取值:2018-04-09。 Region否String公共参数,本接口不需要传递此参数。 TaskId是Integer正整数。验证成功的拨测任务id BeginTime是String开始时间点。格式如:2017-05-09 10:20:00。注意,BeginTime 和 EndTime 需要在同一天 EndTime是String结束时间点。格式如:2017-05-09 10:25:00。注意,BeginTime 和 EndTime 需要在同一天 Province是String省份名称的全拼 3. 输出参数 参数名称类型描述 DetailsArray of CatReturnDetail拨测失败详情列表 SummaryArray of CatReturnSummary拨测失败汇总列表 BeginTimeTimestamp开始时间 EndTimeTimestamp截至时间 RequestIdString唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 4. 示例示例1 查询拨测任务的历史返回码信息示例输入示例https:cat.tencentcloudapi.com?Action=GetReturnCodeHistory&TaskId=260228&BeginTime=2019-12-11 10:00:00&EndTime=2019-12-11 20:30:00&Province=beijing-1&<公共请求参数>输出示例{ Response: { Details: , Summary: , BeginTime: 2019-12-11 10:00:00, EndTime: 2019-12-11 20:30:00, RequestId: 87869edf-ca3e-4c2c-8a5a-52eee8396e20 }}5. 开发者资源腾讯云 API 平台腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。API Inspector用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。SDK云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。 Tencent Cloud SDK 3.0 for PythonTencent Cloud SDK 3.0 for JavaTencent Cloud SDK 3.0 for PHPTencent Cloud SDK 3.0 for GoTencent Cloud SDK 3.0 for NodeJSTencent Cloud SDK 3.0 for .NETTencent Cloud SDK 3.0 for C++Tencent Cloud SDK 3.0 for Ruby 命令行工具 Tencent Cloud CLI 3.0 6. 错误码以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。 错误码描述 InternalError内部错误。 InvalidParameter参数错误。 ResourceNotFound资源不存在。
    来自:
  • 获取任务列表的实时数据

    1. 接口描述接口请求域名: cat.tencentcloudapi.com 。获取任务列表的实时数据默认接口请求频率限制:300次秒。 推荐使用 API Explorer 点击调试 API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。 2. 输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。 参数名称必选类型描述 Action是String公共参数,本接口取值:GetResultSummary。 Version是String公共参数,本接口取值:2018-04-09。 Region否String公共参数,本接口不需要传递此参数。 TaskIds.N是Array of Integer任务Id列表 3. 输出参数 参数名称类型描述 RealDataArray of ResultSummary实时统计数据 DayDataArray of ResultSummary按天的统计数据 RequestIdString唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 4. 示例示例1 获取任务列表的实时数据输入示例https:cat.tencentcloudapi.com?Action=GetResultSummary&TaskIds.1=226791&<公共请求参数>输出示例{ Response: { RealData: , DayData: , RequestId: a7be32f9-4e5c-4996-8cc9-15a2d11055d8 }}5. 开发者资源腾讯云 API 平台腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。API Inspector用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。SDK云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。 Tencent Cloud SDK 3.0 for PythonTencent Cloud SDK 3.0 for JavaTencent Cloud SDK 3.0 for PHPTencent Cloud SDK 3.0 for GoTencent Cloud SDK 3.0 for NodeJSTencent Cloud SDK 3.0 for .NETTencent Cloud SDK 3.0 for C++Tencent Cloud SDK 3.0 for Ruby 命令行工具 Tencent Cloud CLI 3.0 6. 错误码以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。 错误码描述 InternalError内部错误。 InvalidParameter参数错误。 ResourceNotFound资源不存在。
    来自:
  • 查询拨测任务的走势数据

    1. 接口描述接口请求域名: cat.tencentcloudapi.com 。查询拨测任务的走势数据默认接口请求频率限制:300次秒。 推荐使用 API Explorer 点击调试 API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。 2. 输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。 参数名称必选类型描述 Action是String公共参数,本接口取值:GetRespTimeTrendEx。 Version是String公共参数,本接口取值:2018-04-09。 Region否String公共参数,本接口不需要传递此参数。 TaskId是Integer验证成功的拨测任务id Date是Date统计数据的发生日期。格式如:2017-05-09 Period是Integer数据的采集周期,单位分钟。取值可为 1, 5, 15, 30 Dimensions否DimensionsDetail可为 Isp, Province MetricName否String可为 totalTime, parseTime, connectTime, sendTime, waitTime, receiveTime, availRatio。缺省值为 totalTime 3. 输出参数 参数名称类型描述 DataPointsArray of DataPointMetric数据点集合,时延等走势数据 RequestIdString唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 4. 示例示例1 查询拨测任务的走势数据示例输入示例https:cat.tencentcloudapi.com?Action=GetRespTimeTrendEx&TaskId=226791&Period=1&Date=22019-12-12&MetricName=availRatio&Dimensions.Province.0=Avg&Dimensions.Isp.0=Avg&<公共请求参数>输出示例{ Response: { DataPoints: , RequestId: af4205fa-de57-48af-a6ce-0c4b5593d1cb }}5. 开发者资源腾讯云 API 平台腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。API Inspector用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。SDK云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。 Tencent Cloud SDK 3.0 for PythonTencent Cloud SDK 3.0 for JavaTencent Cloud SDK 3.0 for PHPTencent Cloud SDK 3.0 for GoTencent Cloud SDK 3.0 for NodeJSTencent Cloud SDK 3.0 for .NETTencent Cloud SDK 3.0 for C++Tencent Cloud SDK 3.0 for Ruby 命令行工具 Tencent Cloud CLI 3.0 6. 错误码以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。 错误码描述 InternalError内部错误。 InvalidParameter参数错误。 ResourceNotFound资源不存在。
    来自:
  • 获取实时可用率信息

    1. 接口描述接口请求域名: cat.tencentcloudapi.com 。获取实时可用率信息默认接口请求频率限制:300次秒。 推荐使用 API Explorer 点击调试 API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。 2. 输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。 参数名称必选类型描述 Action是String公共参数,本接口取值:GetRealAvailRatio。 Version是String公共参数,本接口取值:2018-04-09。 Region否String公共参数,本接口不需要传递此参数。 TaskId是Integer拨测任务Id 3. 输出参数 参数名称类型描述 AvgAvailRatioFloat国内平均可用率 LowestAvailRatioFloat各省份最低可用率 LowestProvinceString可用率最低的省份 LowestIspString可用率最低的运营商 ProvinceDataArray of ProvinceDetail分省份的可用率数据 AvgTimeFloat国内平均耗时,单位毫秒 AvgAvailRatio2Float国外平均可用率 AvgTime2Float国外平均耗时,单位毫秒 LowestAvailRatio2Float国外最低可用率 LowestProvince2String国外可用率最低的区域 LowestIsp2String国外可用率最低的运营商 ProvinceData2Array of ProvinceDetail国外分区域的可用率数据 RequestIdString唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 4. 示例示例1 获取实时可用率信息 示例输入示例https:cat.tencentcloudapi.com?Action=GetRealAvailRatio&TaskId=253632&<公共请求参数>输出示例{ Response: { AvgAvailRatio: 100, AvgTime: 123.32, LowestAvailRatio: 100, LowestProvince: 天津, LowestIsp: 联通, ProvinceData: , Province: anhui }, { AvgAvailRatio: 100, AvgTime: 201, ProvinceName: 辽宁, Mapkey: liaoNing, TimeStamp: 2019-12-12 18:32:00, IspDetail: , Province: liaoning }, { AvgAvailRatio: 100, AvgTime: 83.5, ProvinceName: 上海, Mapkey: shangHai, TimeStamp: 2019-12-12 18:32:00, IspDetail: , Province: sh }, { AvgAvailRatio: 100, AvgTime: 143.17, ProvinceName: 四川, Mapkey: siChuan, TimeStamp: 2019-12-12 18:32:00, IspDetail: , Province: sichuan }, { AvgAvailRatio: 100, AvgTime: 45.5, ProvinceName: 天津, Mapkey: tianJin, TimeStamp: 2019-12-12 18:32:00, IspDetail: , Province: tj }, { AvgAvailRatio: 100, AvgTime: 89.5, ProvinceName: 重庆, Mapkey: chongQing, TimeStamp: 2019-12-12 18:32:00, IspDetail: , Province: chongqing }, { AvgAvailRatio: 100, AvgTime: 238, ProvinceName: 福建, Mapkey: fuJian, TimeStamp: 2019-12-12 18:31:00, IspDetail: , Province: fujian }, { AvgAvailRatio: 100, AvgTime: 91.25, ProvinceName: 广东, Mapkey: guangDong, TimeStamp: 2019-12-12 18:31:00, IspDetail: , Province: gd }, { AvgAvailRatio: 100, AvgTime: 219, ProvinceName: 贵州, Mapkey: guiZhou, TimeStamp: 2019-12-12 18:32:00, IspDetail: , Province: guizhou }, { AvgAvailRatio: 100, AvgTime: 209.67, ProvinceName: 湖南, Mapkey: huNan, TimeStamp: 2019-12-12 18:31:00, IspDetail: , Province: hunan }, { AvgAvailRatio: 100, AvgTime: 61, ProvinceName: 浙江, Mapkey: zheJiang, TimeStamp: 2019-12-12 18:32:00, IspDetail: , Province: zj } ], AvgAvailRatio2: 100, AvgTime2: 0, LowestAvailRatio2: 100, LowestProvince2: , LowestIsp2: , ProvinceData2: [], RequestId: e15b251e-60c5-48af-8213-159315cd0361 }}5. 开发者资源腾讯云 API 平台腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。API Inspector用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。SDK云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。 Tencent Cloud SDK 3.0 for PythonTencent Cloud SDK 3.0 for JavaTencent Cloud SDK 3.0 for PHPTencent Cloud SDK 3.0 for GoTencent Cloud SDK 3.0 for NodeJSTencent Cloud SDK 3.0 for .NETTencent Cloud SDK 3.0 for C++Tencent Cloud SDK 3.0 for Ruby 命令行工具 Tencent Cloud CLI 3.0 6. 错误码以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。 错误码描述 InternalError内部错误。 InvalidParameter参数错误。 ResourceNotFound资源不存在。
    来自:
  • 获取一天的整体可用率信息

    1. 接口描述接口请求域名: cat.tencentcloudapi.com 。获取一天的整体可用率信息默认接口请求频率限制:300次秒。 推荐使用 API Explorer 点击调试 API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。 2. 输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。 参数名称必选类型描述 Action是String公共参数,本接口取值:GetDailyAvailRatio。 Version是String公共参数,本接口取值:2018-04-09。 Region否String公共参数,本接口不需要传递此参数。 TaskId是Integer拨测任务Id 3. 输出参数 参数名称类型描述 AvgAvailRatioFloat整体平均可用率 LowestAvailRatioFloat各省份最低可用率 LowestProvinceString可用率最低的省份 ProvinceDataArray of ProvinceDetail分省份的可用率数据 AvgTimeFloat国内平均耗时,单位毫秒 AvgAvailRatio2Float国外平均可用率 AvgTime2Float国外平均耗时,单位毫秒 LowestAvailRatio2Float国外最低可用率 LowestProvince2String国外可用率最低的区域 ProvinceData2Array of ProvinceDetail国外分区域的可用率数据 RequestIdString唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 4. 示例示例1 获取一天的整体可用率信息 示例输入示例https:cat.tencentcloudapi.com?Action=GetDailyAvailRatio&TaskId=260228&<公共请求参数>输出示例{ Response: { AvgAvailRatio: 0, AvgTime: 1000.31, LowestAvailRatio: 0, LowestProvince: , ProvinceData: , Province: beijing-1 }, { AvgAvailRatio: 0, AvgTime: 1000.32, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: beijing-3 }, { AvgAvailRatio: 0, AvgTime: 1000.19, ProvinceName: 重庆, Mapkey: chongQing, TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: chongqing }, { AvgAvailRatio: 0, AvgTime: 1000.18, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: guangzhou-3 }, { AvgAvailRatio: 0, AvgTime: 1000.15, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: guangzhou-4 }, { AvgAvailRatio: 0, AvgTime: 1000.79, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: shanghai-1 }, { AvgAvailRatio: 0, AvgTime: 1000.31, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: shanghai-3 }, { AvgAvailRatio: 0, AvgTime: 1000.32, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: shanghai-4 }, { AvgAvailRatio: 0, AvgTime: 1000.2, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: bangkok-1 }, { AvgAvailRatio: 0, AvgTime: 1000.08, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: germany-1 }, { AvgAvailRatio: 0, AvgTime: 1000.13, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: hongkong-1 }, { AvgAvailRatio: 0, AvgTime: 1000.3, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: hongkong-2 }, { AvgAvailRatio: 0, AvgTime: 1000.27, ProvinceName: 江苏, Mapkey: jiangSu, TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: jiangsu }, { AvgAvailRatio: 0, AvgTime: 1000.16, ProvinceName: 孟买, Mapkey: mumbai, TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: mumbai }, { AvgAvailRatio: 0, AvgTime: 1000.53, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: shanghai-2 }, { AvgAvailRatio: 0, AvgTime: 1000.3, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: silicon-v1 }, { AvgAvailRatio: 0, AvgTime: 1000.32, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: silicon-v2 }, { AvgAvailRatio: 0, AvgTime: 1000.17, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: singapore-1 }, { AvgAvailRatio: 0, AvgTime: 1000.27, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: tianjin-1 }, { AvgAvailRatio: 0, AvgTime: 1000.25, ProvinceName: , Mapkey: , TimeStamp: 2019-12-11 00:00:00, IspDetail: , Province: va } ], AvgAvailRatio2: 0, AvgTime2: 1000.12, LowestAvailRatio2: 0, LowestProvince2: 莫斯科, ProvinceData2: , Province: moscow } ], RequestId: 12f1f02c-fc67-4e47-9243-b906a541eeb9 }}5. 开发者资源腾讯云 API 平台腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。API Inspector用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。SDK云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。 Tencent Cloud SDK 3.0 for PythonTencent Cloud SDK 3.0 for JavaTencent Cloud SDK 3.0 for PHPTencent Cloud SDK 3.0 for GoTencent Cloud SDK 3.0 for NodeJSTencent Cloud SDK 3.0 for .NETTencent Cloud SDK 3.0 for C++Tencent Cloud SDK 3.0 for Ruby 命令行工具 Tencent Cloud CLI 3.0 6. 错误码以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。 错误码描述 InternalError内部错误。 InvalidParameter参数错误。 ResourceNotFound资源不存在。
    来自:
  • 获取指定时刻的可用率地图信息

    1. 接口描述接口请求域名: cat.tencentcloudapi.com 。获取指定时刻的可用率地图信息默认接口请求频率限制:300次秒。 推荐使用 API Explorer 点击调试 API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。 2. 输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。 参数名称必选类型描述 Action是String公共参数,本接口取值:GetAvailRatioHistory。 Version是String公共参数,本接口取值:2018-04-09。 Region否String公共参数,本接口不需要传递此参数。 TaskId是Integer拨测任务Id TimeStamp是Timestamp具体时间点 3. 输出参数 参数名称类型描述 AvgAvailRatioFloat整体平均可用率 LowestAvailRatioFloat各省份最低可用率 LowestProvinceString可用率最低的省份 LowestIspString可用率最低的运营商 ProvinceDataArray of ProvinceDetail分省份的可用率数据 AvgTimeFloat国内平均耗时,单位毫秒 AvgAvailRatio2Float国外平均可用率 AvgTime2Float国外平均耗时,单位毫秒 LowestAvailRatio2Float国外最低可用率 LowestProvince2String国外可用率最低的区域 LowestIsp2String国外可用率最低的运营商 ProvinceData2Array of ProvinceDetail国外分区域的可用率数据 RequestIdString唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 4. 示例示例1 获取指定时刻的可用率地图信息 示例输入示例https:cat.tencentcloudapi.com?Action=GetAvailRatioHistory&TaskId=260228&TimeStamp=2019-12-10 11:27:00&<公共请求参数>输出示例{ Response: { AvgAvailRatio: 100, AvgTime: 37, LowestAvailRatio: 100, LowestProvince: 北京(一区), LowestIsp: 腾讯云, ProvinceData: , Province: beijing-1 } ], AvgAvailRatio2: 100, AvgTime2: 261, LowestAvailRatio2: 100, LowestProvince2: 莫斯科, LowestIsp2: 腾讯云, ProvinceData2: , Province: moscow } ], RequestId: d0791a07-6163-4e63-baad-97d244548d6f }}5. 开发者资源腾讯云 API 平台腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。API Inspector用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。SDK云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。 Tencent Cloud SDK 3.0 for PythonTencent Cloud SDK 3.0 for JavaTencent Cloud SDK 3.0 for PHPTencent Cloud SDK 3.0 for GoTencent Cloud SDK 3.0 for NodeJSTencent Cloud SDK 3.0 for .NETTencent Cloud SDK 3.0 for C++Tencent Cloud SDK 3.0 for Ruby 命令行工具 Tencent Cloud CLI 3.0 6. 错误码以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。 错误码描述 InternalError内部错误。 InvalidParameter参数错误。 ResourceNotFound资源不存在。
    来自:
  • 查询拨测流水

    1. 接口描述接口请求域名: cat.tencentcloudapi.com 。查询拨测流水默认接口请求频率限制:300次秒。 推荐使用 API Explorer 点击调试 API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。 2. 输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。 参数名称必选类型描述 Action是String公共参数,本接口取值:DescribeCatLogs。 Version是String公共参数,本接口取值:2018-04-09。 Region否String公共参数,本接口不需要传递此参数。 TaskId是Integer拨测任务Id Offset否Integer从第Offset 条开始查询。缺省值为0 Limit否Integer本批次查询Limit 条记录。缺省值为20 BeginTime否Timestamp格式如:2017-05-09 00:00:00 缺省为当天0点,最多拉取1天的数据 EndTime否Timestamp格式如:2017-05-10 00:00:00 缺省为当前时间 SortType否String按时间升序或降序。默认降序。可选值: Desc, Asc 3. 输出参数 参数名称类型描述 TotalCountInteger符合条件的总记录数 CatLogsArray of CatLog拨测记录列表 RequestIdString唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 4. 示例示例1 查询拨测流水 示例输入示例https:cat.tencentcloudapi.com?Action=DescribeCatLogs&Offset=0&Limit=2&TaskId=226791&<公共请求参数>输出示例{ Response: { TotalCount: 126, CatLogs: , RequestId: ed82e699-d3c4-408d-b12c-21b0b9aaea5c }}5. 开发者资源腾讯云 API 平台腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。API Inspector用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。SDK云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。 Tencent Cloud SDK 3.0 for PythonTencent Cloud SDK 3.0 for JavaTencent Cloud SDK 3.0 for PHPTencent Cloud SDK 3.0 for GoTencent Cloud SDK 3.0 for NodeJSTencent Cloud SDK 3.0 for .NETTencent Cloud SDK 3.0 for C++Tencent Cloud SDK 3.0 for Ruby 命令行工具 Tencent Cloud CLI 3.0 6. 错误码以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。 错误码描述 InternalError内部错误。 InvalidParameter参数错误。 ResourceNotFound资源不存在。
    来自:
  • 按任务查询拨测告警列表

    1. 接口描述接口请求域名: cat.tencentcloudapi.com 。按任务查询拨测告警列表默认接口请求频率限制:300次秒。 推荐使用 API Explorer 点击调试 API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。 2. 输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。 参数名称必选类型描述 Action是String公共参数,本接口取值:DescribeAlarmsByTask。 Version是String公共参数,本接口取值:2018-04-09。 Region否String公共参数,本接口不需要传递此参数。 TaskId是Integer拨测任务Id Offset否Integer从第Offset 条开始查询。缺省值为0 Limit否Integer本批次查询Limit 条记录。缺省值为20 Status否Integer0 全部, 1 已恢复, 2 未恢复 默认为0。其他值,视为0 查全部状态 BeginTime否Timestamp格式如:2017-05-09 00:00:00 缺省为7天前0点 EndTime否Timestamp格式如:2017-05-10 00:00:00 缺省为明天0点 SortBy否String排序字段,可为Time, ObjName, Duration, Status, Content 之一。缺省为Time SortType否String升序或降序。可为Desc, Asc之一。缺省为Desc ObjName否String告警对象的名称 3. 输出参数 参数名称类型描述 AlarmInfosArray of AlarmInfo告警信息列表 FaultRatioFloat故障率 FaultTimeSpecString故障总时长 RequestIdString唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 4. 示例示例1 按任务查询拨测告警列表示例输入示例https:cat.tencentcloudapi.com?Action=DescribeAlarmsByTask&Offset=0&Limit=2&BeginTime=2019-12-11 00:04:24&EndTime=2019-12-12 00:04:24&TaskId=260409&<公共请求参数>输出示例{ Response: { AlarmInfos: , FaultTimeSpec: 5分5秒, FaultRatio: 0.3762, RequestId: 62116e8d-94da-401c-9d38-145d92ce1f43 }}5. 开发者资源腾讯云 API 平台腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。API Inspector用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。SDK云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。 Tencent Cloud SDK 3.0 for PythonTencent Cloud SDK 3.0 for JavaTencent Cloud SDK 3.0 for PHPTencent Cloud SDK 3.0 for GoTencent Cloud SDK 3.0 for NodeJSTencent Cloud SDK 3.0 for .NETTencent Cloud SDK 3.0 for C++Tencent Cloud SDK 3.0 for Ruby 命令行工具 Tencent Cloud CLI 3.0 6. 错误码以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。 错误码描述 InternalError内部错误。 InvalidParameter参数错误。 ResourceNotFound资源不存在。
    来自:

扫码关注云+社区

领取腾讯云代金券