华为云用户手册

  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 table_name 是 String 表名,仓内唯一。 长度:[3, 63] 取值字符限制:[a-z0-9_-]+ condition_expression 否 condition_expression object 条件表达式,参见conditional小节。 长度:[8,4096] kv_doc 否 Document 用户文档。 kv_blob 否 kv_blob object 用户非结构化数据。 表3 condition_expression 参数 是否必选 参数类型 描述 single_field_expression 否 single_field_expression object 单字段条件。 multi_field_expression 否 multi_field_expression object 多字段条件,多个相同优先级的单字段条件。 single_kv_expression 否 single_kv_expression object 文档表达式。 composed_expression 否 composed_expression object 组合条件, 逐层同级的子表达式嵌套。 表4 composed_expression 参数 是否必选 参数类型 描述 logic 否 String 逻辑关系,取值如"$and", "$or", "$nor"。 expressions 是 Array of expression objects 多个相同优先级且相同逻辑的单字段或多字段条件。 表5 expression 参数 是否必选 参数类型 描述 single_kv_expression 否 single_kv_expression object 单KV条件。 single_field_expression 否 single_field_expression object 单字段条件。 multi_field_expression 否 multi_field_expression object 多字段条件。 表6 single_kv_expression 参数 是否必选 参数类型 描述 func 是 String 取值:"is_doc", "is_blob", "is_exist", "not_exist"。 表7 single_field_expression 参数 是否必选 参数类型 描述 field 是 String 条件字段。 func 是 String 条件函数,取值如"$gt", $lt","$gte", $lte" "$eq", "$ne", "$prefix", "$in","$nin", "$exists"。 value 否 Document value和value_array二选一。 value条件值,适用于除"$in", "$nin"外的func。 字段名无意义,可以传空,也可以传字段名。 $exists值为true/false。 说明: $prefix操作只适用于string和binary类型。 value_array 否 Array of strings "value"和"value_array"二选一。 "value_array" 条件值列表, 值用于"$in", "$nin"。 表8 multi_field_expression 参数 是否必选 参数类型 描述 logic 否 String 多字段条件,多个相同优先级的单字段条件。 expressions 是 Array of single_field_expression objects 多个相同逻辑操作的单字段条件。 表9 kv_blob 参数 是否必选 参数类型 描述 primary_key 是 Document 用户自定义的主键名及值。 说明: 内容字段:主键字段名和值,组合索引多个元素。 xblob 否 String 属性信息,最大2kb。 xattr 否 String 非结构化数据内容。
  • 响应示例 状态码: 200 表示扫描所有kv请求成功 { "returned_count" : 1, "filtered_count" : 0, "returned_kv_items" : [ { "kv_blob_data" : { "primary_key" : { "owner" : "user_2", "filename" : "test_file_2" }, "blob_data" : "binary_blob_data", "xattr" : "binary_xattr_data" } } ] }
  • 请求示例 扫描所有kv,扫描条件为分区键的值为user2 POST https://{endpoint}/v1/scan-kv { "table_name" : "test_table_1", "filter_expression" : { "single_field_expr" : { "field" : "owner", "func" : "$eq", "value" : { "value" : "user_2" } } } }
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 table_name 是 String 表名,仓内唯一。 长度:[3, 63] 取值字符限制:[a-z0-9_-]+ hint_index_name 否 String create_table时指定的索引名,默认空表示主索引。 长度:[3, 63] 取值字符限制:[a-z0-9_-]+ limit 否 Integer 数据量不超过1MB时,返回的文档个数,最大100个,默认1MB或者100个文档。 最大值:100 start_key 否 Document 起始主键或索引键值。 默认空,表示从头遍历,左闭。 说明: 分页返回时,该值使用上次响应返回的cursor_key。 end_key 否 Document 终止主键或索引键值。 默认空,表示直到最后,右开。 filter_expression 否 condition_expression object 过滤表达式,同condition_expression。 说明: 允许键字段作为条件。 在满足start_key和endkey的范围内,执行filter逻辑。 projection_fields 否 Array of strings 对kv_doc有效,返回哪些字段列表,默认全部。 projection_blob 否 projection_blob object 对kv_blob有效,返回局部数据; 默认返回全部数据。 表3 condition_expression 参数 是否必选 参数类型 描述 single_field_expression 否 single_field_expression object 单字段条件。 multi_field_expression 否 multi_field_expression object 多字段条件,多个相同优先级的单字段条件。 single_kv_expression 否 single_kv_expression object 文档表达式。 composed_expression 否 composed_expression object 组合条件, 逐层同级的子表达式嵌套。 表4 composed_expression 参数 是否必选 参数类型 描述 logic 否 String 逻辑关系,取值如"$and", "$or", "$nor"。 expressions 是 Array of expression objects 多个相同优先级且相同逻辑的单字段或多字段条件。 表5 expression 参数 是否必选 参数类型 描述 single_kv_expression 否 single_kv_expression object 单KV条件。 single_field_expression 否 single_field_expression object 单字段条件。 multi_field_expression 否 multi_field_expression object 多字段条件。 表6 single_kv_expression 参数 是否必选 参数类型 描述 func 是 String 取值:"is_doc", "is_blob", "is_exist", "not_exist"。 表7 single_field_expression 参数 是否必选 参数类型 描述 field 是 String 条件字段。 func 是 String 条件函数,取值如"$gt", $lt","$gte", $lte" "$eq", "$ne", "$prefix", "$in","$nin", "$exists"。 value 否 Document value和value_array二选一。 value条件值,适用于除"$in", "$nin"外的func。 字段名无意义,可以传空,也可以传字段名。 $exists值为true/false。 说明: $prefix操作只适用于string和binary类型。 value_array 否 Array of strings "value"和"value_array"二选一。 "value_array" 条件值列表, 值用于"$in", "$nin"。 表8 multi_field_expression 参数 是否必选 参数类型 描述 logic 否 String 多字段条件,多个相同优先级的单字段条件。 expressions 是 Array of single_field_expression objects 多个相同逻辑操作的单字段条件。 表9 projection_blob 参数 是否必选 参数类型 描述 with_attr 否 Boolean 是否返回kv_blob的属性信息, 默认返回。 offset 否 Integer value部分的偏移位置,超过实际size不返回,默认0。 len 否 Integer 数据长度,默认offset后全部数据。
  • 响应示例 状态码: 200 表示扫描分区键内kv请求成功 { "returned_count" : 1, "filtered_count" : 0, "kv_array" : [ { "returned_kv_items" : { "primary_key" : { "owner" : "user_1", "filename" : "test_file_1" }, "blob_data" : "binary_blob_data", "xattr" : "binary_xattr_data" } } ] }
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 table_name 是 String 表名,仓内唯一。 长度:[3, 63] 取值字符限制:[a-z0-9_-]+ hint_index_name 否 String create_table时指定的索引名。 limit 否 Integer 数据量不超过1MB时,返回的文档个数,最大100个,默认1MB或者100个文档。 最大值:100 shard_key 是 Document 要遍历的指定分区键下的kv。 start_sort_key 否 Document 起始排序键值,默认空表示从头遍历,左闭。 说明: 分页返回时,该值使用上次响应返回的cursor_sort_key end_sort_key 否 Document 终止主键或索引键值,默认空表示直到最后,右开。 filter_expression 否 condition_expression object 过滤表达式,同condition_expression语法。 说明: 允许主键字段作为条件。 在满足shard_key和start_sort_key和end_sortkey的范围内,执行filter逻辑。 projection_fields 否 Array of strings 对kv_doc有效,返回哪些字段列表,默认全部。 数组元素的字段名或嵌套字段路径用'/'分割,e_name为下标。 projection_blob 否 projection_blob object 对kv_blob有效,返回局部数据; 默认返回全部数据。 表3 condition_expression 参数 是否必选 参数类型 描述 single_field_expression 否 single_field_expression object 单字段条件。 multi_field_expression 否 multi_field_expression object 多字段条件,多个相同优先级的单字段条件。 single_kv_expression 否 single_kv_expression object 文档表达式。 composed_expression 否 composed_expression object 组合条件, 逐层同级的子表达式嵌套。 表4 composed_expression 参数 是否必选 参数类型 描述 logic 否 String 逻辑关系,取值如"$and", "$or", "$nor"。 expressions 是 Array of expression objects 多个相同优先级且相同逻辑的单字段或多字段条件。 表5 expression 参数 是否必选 参数类型 描述 single_kv_expression 否 single_kv_expression object 单KV条件。 single_field_expression 否 single_field_expression object 单字段条件。 multi_field_expression 否 multi_field_expression object 多字段条件。 表6 single_kv_expression 参数 是否必选 参数类型 描述 func 是 String 取值:"is_doc", "is_blob", "is_exist", "not_exist"。 表7 single_field_expression 参数 是否必选 参数类型 描述 field 是 String 条件字段。 func 是 String 条件函数,取值如"$gt", $lt","$gte", $lte" "$eq", "$ne", "$prefix", "$in","$nin", "$exists"。 value 否 Document value和value_array二选一。 value条件值,适用于除"$in", "$nin"外的func。 字段名无意义,可以传空,也可以传字段名。 $exists值为true/false。 说明: $prefix操作只适用于string和binary类型。 value_array 否 Array of strings "value"和"value_array"二选一。 "value_array" 条件值列表, 值用于"$in", "$nin"。 表8 multi_field_expression 参数 是否必选 参数类型 描述 logic 否 String 多字段条件,多个相同优先级的单字段条件。 expressions 是 Array of single_field_expression objects 多个相同逻辑操作的单字段条件。 表9 projection_blob 参数 是否必选 参数类型 描述 with_attr 否 Boolean 是否返回kv_blob的属性信息, 默认返回。 offset 否 Integer value部分的偏移位置,超过实际size不返回,默认0。 len 否 Integer 数据长度,默认offset后全部数据。
  • 请求示例 更新单个kv,设置表名为test-table-1,设置更新的kv分区键值为user1,排序键为test-file-1,设置更新的鑫数据为非结构化数据。 POST https://{endpoint}/v1/update-kv { "table_name" : "test_table_1", "primary_key" : { "owner" : "user_1", "filename" : "test_file_1" }, "update_blob" : { "xattr" : "new_binary_xattr_data", "offset" : 10, "len" : 1024, "blob_data" : "new_binary_blob_data" } }
  • 响应示例 状态码: 200 表示更新单个kv请求成功 { "kv_blob_data" : { "primary_key" : { "owner" : "user_1", "filename" : "test_file_1" }, "total_bytes" : 1048, "offset" : 10, "len" : 1024, "blob_data" : "new_binary_blob_data", "xattr" : "new_binary_xattr_data" } }
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 table_name 是 String 表名,仓内唯一。 长度:[3, 63] 取值字符限制:[a-z0-9_-]+ primary_key 是 Document 用户自定义的主键名及值。 说明: 内容字段:主键字段名和值,组合索引多个元素。 condition_expression 否 condition_expression object 条件表达式,参见conditional小节,禁止携带主键字段。 kv_options 否 kv_options object 选项字段。 true:返回操作执行前的内容。 false:返回操作执行后的内容。 update_fields 否 update_fields object 对kv_doc有效。 projection_fields 否 Array of strings 对kv_doc有效,返回哪些字段列表,默认全部。 说明: 字段名或嵌套字段路径用'/'分割 ,e_name为下标。 update_blob 否 update_blob object 对kv_blob有效,修改局部数据。 projection_blob 否 projection_blob object 对kv_blob有效,返回局部数据。 表3 condition_expression 参数 是否必选 参数类型 描述 single_field_expression 否 single_field_expression object 单字段条件。 multi_field_expression 否 multi_field_expression object 多字段条件,多个相同优先级的单字段条件。 single_kv_expression 否 single_kv_expression object 文档表达式。 composed_expression 否 composed_expression object 组合条件, 逐层同级的子表达式嵌套。 表4 composed_expression 参数 是否必选 参数类型 描述 logic 否 String 逻辑关系,取值如"$and", "$or", "$nor"。 expressions 是 Array of expression objects 多个相同优先级且相同逻辑的单字段或多字段条件。 表5 expression 参数 是否必选 参数类型 描述 single_kv_expression 否 single_kv_expression object 单KV条件。 single_field_expression 否 single_field_expression object 单字段条件。 multi_field_expression 否 multi_field_expression object 多字段条件。 表6 single_kv_expression 参数 是否必选 参数类型 描述 func 是 String 取值:"is_doc", "is_blob", "is_exist", "not_exist"。 表7 single_field_expression 参数 是否必选 参数类型 描述 field 是 String 条件字段。 func 是 String 条件函数,取值如"$gt", $lt","$gte", $lte" "$eq", "$ne", "$prefix", "$in","$nin", "$exists"。 value 否 Document value和value_array二选一。 value条件值,适用于除"$in", "$nin"外的func。 字段名无意义,可以传空,也可以传字段名。 $exists值为true/false。 说明: $prefix操作只适用于string和binary类型。 value_array 否 Array of strings "value"和"value_array"二选一。 "value_array" 条件值列表, 值用于"$in", "$nin"。 表8 multi_field_expression 参数 是否必选 参数类型 描述 logic 否 String 多字段条件,多个相同优先级的单字段条件。 expressions 是 Array of single_field_expression objects 多个相同逻辑操作的单字段条件。 表9 kv_options 参数 是否必选 参数类型 描述 return_hint 否 Boolean true:返回操作执行前的内容,默认true。 false:返回操作执行后的内容。 表10 update_fields 参数 是否必选 参数类型 描述 set 否 Document 新增字段或覆盖某字段的值1个或多个字段。 说明: 禁止修改sortkey的字段。 add 否 Document 对某个字段做加法运算,并更新为运算后的值1个或多个字段。 rmv 否 Array of strings 删除1个或多个字段。 数组元素为待删除字段名。 表11 update_blob 参数 是否必选 参数类型 描述 xattr 否 String 属性信息。 offset 否 Integer value部分的偏移位置。 说明: 超过value当前size无效 "offset"与"len"与"blob_data" 要么都带,要么都不带。 len 否 Integer 更新内容长度。 blob_data 否 String 二进制内容。 表12 projection_blob 参数 是否必选 参数类型 描述 with_attr 否 Boolean 是否返回kv_blob的属性信息, 默认返回。 offset 否 Integer value部分的偏移位置,超过实际size不返回,默认0。 len 否 Integer 数据长度,默认offset后全部数据。
  • 续费简介 包年/包月NAT网关到期后会影响NAT网关正常运行。如果您想继续使用,需要在指定的时间内为NAT网关续费,否则相关资源将会被停止或者释放,数据也可能会丢失。 续费操作仅适用于包年/包月公网NAT网关,按需计费NAT网关不需要续费,只需要保证账户余额充足即可。 包年/包月公网NAT网关在到期前续费成功,所有资源得以保留,且NAT网关的运行不受影响。NAT网关到期后的状态说明,请参见到期后影响。
  • 续费相关功能 包年/包月公网NAT网关续费相关的功能如表1所示 表1 续费相关的功能 功能 说明 手动续费 包年/包月NAT网关从购买到被自动删除之前,您可以随时在NAT网关控制台为NAT网关续费,以延长NAT网关的使用时间。 自动续费 开通自动续费后,NAT网关会在每次到期前自动续费,避免因忘记手动续费而导致资源被自动删除。 在一个包年/包月NAT网关生命周期的不同阶段,您可以根据需要选择一种方式进行续费,具体如图1所示。 图1 NAT网关生命周期 NAT网关从购买到到期前,处于正常运行阶段,资源状态为“运行中”。 到期后,资源状态变为“已过期”。 到期未续费时,NAT网关首先会进入宽限期,宽限期到期后仍未续费,资源状态变为“已冻结”。 超过宽限期仍未续费将进入保留期,如果保留期内仍未续费,资源将被自动删除。 华为云根据客户等级定义了不同客户的宽限期和保留期时长。
  • 包年/包月资源 对于包年/包月计费模式的NAT网关,用户在购买时会一次性付费,服务将在到期后自动停止使用。 如果在计费周期内不再使用包年/包月资源,您可以执行退订操作,系统将根据资源是否属于五天无理由退订、是否使用代金券和折扣券等条件返还一定金额到您的账户。详细的退订规则请参见云服务退订规则概览。 如果您已开启“自动续费”功能,为避免继续产生费用,请在自动续费扣款日(默认为到期前7日)之前关闭自动续费。
  • 场景示例:核对资源用量是否与实际相符 假设您在2023/04/08 10:09:06购买了一个按需计费的 私网NAT网关 ,产品规格为小型,然后在2023/04/08 12:09:06将其删除。 私网NAT网关流水账单 按需计费私网NAT网关按秒计费,每一个小时整点结算一次费用,您可以在流水账单中核对每一个计费周期的信息是否和实际相符,具体如表表1所示。 表1 NAT网关流水账单 产品类型 NAT网关 产品 私网NAT网关 计费模式 按需 消费时间 2023/04/08 10:09:06 ~ 2023/04/08 12:09:06时段计费系统将生成3笔流水账单,对应每一个计费周期,分别如下: 2023/04/08 10:09:06 ~ 2023/04/08 11:00:00 2023/04/08 11:00:00 ~ 2023/04/08 12:00:00 2023/04/08 12:00:00 ~ 2023/04/08 12:09:06 官网价 官网价=使用时长*单价 本例中,在第一个计费周期内私网NAT网关的使用量为3054秒,单价可在NAT网关价格详情中查询,产品规格为小型,那么官网价=(3054 ÷ 3600) * 0.5 = 0.42416667元同理,您可以计算剩余计费周期内资源的官网价。 优惠金额 用户使用云服务享受折扣优惠如商务折扣、伙伴授予折扣以及促销优惠等减免的金额。基于官网价的优惠金额。 抹零金额 华为云产品 定价精度为小数点后8位(单位:元),因此在计费过程中会产生小数点后8位的资源使用费用。而在实际扣费时,仅扣除到小数点后2位,小数点后第3位到第8位部分金额会被舍弃,这种舍弃部分的金额称作抹零金额。 以第一个计费周期为例,抹零金额为:0.00416667 元 应付金额 应付金额=官网价-优惠金额-抹零金额 以第一个计费周期为例,假设抹零金额为0元,那么应付金额=0.42416667-0-0.00416667=0.42 元
  • 计费构成分析 可以将公网NAT网关的使用阶段按照计费模式分为两段: 2023/03/18 15:00:00 ~ 2023/03/19 8:00:00期间,以按需计费模式收取NAT网关费用。 2023/03/19 8:00:00 ~ 2023/03/20 8:00:00期间,以按需计费模式收取NAT网关费用。 2023/03/20 8:00:00 ~ 2023/04/20 23:59:59期间,以包年/包月计费模式收取NAT网关费用。 按需计费 在2023/03/18 15:00:00 ~ 2023/03/19 8:00:00期间按照产品规格类型为小型计费,计费时长为1天,费用为:12*1=12元 在2023/03/19 8:00:00 ~ 2023/03/20 8:00:00期间按照产品规格类型为小型计费,计费时长为1天,费用为:12*1=12元 包年/包月计费 在2023/03/20 8:00:00 ~ 2023/04/20 23:59:59期间按照产品规格类型为大型计费,计费时长为1个月,费用为:1147.50*1=1147.50元 由此可见,在3~4月份,该NAT网关服务总共产生的费用为:24+1147.50=1171.50元。
  • 计费场景 某用户在2023/03/18 15:00:00在华北-北京四购买产品规格为小型的按需计费(按天)的公网NAT网关。用了一段时间后,用户发现当前规格无法满足业务需要。于2023/03/20 9:00:00该用户变更其产品规格为大型的公网NAT网关。因为该公网NAT网关打算长期使用下去,于2023/03/20 10:00:00将公网NAT网关转为包年/包月计费,购买时长为1个月。那么在3~4月份,该公网NAT网关服务总共产生多少费用呢?
  • 变更配置对计费的影响 当前包年/包月公网NAT网关资源的规格不满足您的业务需要时,您可以在控制台发起变更规格操作,变更时系统将按照如下规则为您计算变更费用: 资源升配:修改规格时,将按照当日使用的最大规格进行计费。您需要按照与原规格的价格差,结合使用周期内的剩余时间,补齐差价。 资源降配:包年/包月的公网NAT网关不支持规格降级。 这里以资源升配且无任何优惠的场景为例,假设您在2023/04/08购买了一个包年/包月公网NAT网关(规格:小型),购买时长为1个月,计划在2023/04/18变更规格为中型。旧配置价格为306元/月,新配置价格为586.5 元/月。计算公式如下: 升配费用=新配置价格*剩余周期-旧配置价格*剩余周期 公式中的剩余周期为每个自然月的剩余天数/对应自然月的最大天数。本示例中,剩余周期=12(4月份剩余天数)/ 30(4月份最大天数)+ 8(5月份剩余天数)/ 31(5月份最大天数)=0.6581,代入公式可得升配费用=586.5*0.6581-306*0.6581=184.60(元) 更多信息请参见变更资源规格费用说明。
  • 适用场景 包年/包月计费模式需要用户预先支付一定时长的费用,适用于长期、稳定的业务需求。以下是一些适用于包年/包月计费模式的业务场景: 稳定业务需求:对于长期运行且资源需求相对稳定的业务,如企业官网、在线商城、博客等,包年/包月计费模式能提供较高的成本效益。 长期项目:对于周期较长的项目,如科研项目、大型活动策划等,包年/包月计费模式可以确保在整个项目周期内资源的稳定使用。 业务高峰预测:如果能预测到业务高峰期,如电商促销季、节假日等,可提前购买包年/包月资源以应对高峰期的需求,避免资源紧张。 数据安全要求高:对于对数据安全性要求较高的业务,包年/包月计费模式可确保资源的持续使用,降低因资源欠费而导致的数据安全风险。
  • 计费示例 假设您在2023/03/08 15:50:04购买了一个包年/包月公网NAT网关(产品规格为:小型),购买时长为一个月,并在到期前手动续费1个月,产生的费用如包年/包月NAT网关费用计算示例所示: 表1 包年/包月NAT网关费用计算示例 计费周期 计费公式 费用总和(元) 1个月(2023/03/08 15:50:04 ~ 2023/04/08 23:59:59) 规格单价*购买时长 306*1=306 1个月(2023/04/08 23:59:59 ~ 2023/05/08 23:59:59) 306*1=306 上述价格仅供参考,实际计算请以NAT网关价格详情中的价格为准。
  • 计费说明 NAT网关的费用根据您选择的NAT网关类型、规格和使用时长计费。NAT网关提供“包年/包月”和“按需计费”两种计费模式,以满足不同场景下的用户需求。具体内容如下表所示。 表1 NAT网关计费项 计费项 计费项说明 适用的计费模式 计费公式 实例规格 NAT网关的规格指公网NAT网关与私网NAT网关支持的SNAT最大连接数。 包年/包月、按需计费 实例规格单价 * 购买时长 实例规格单价请参见NAT网关价格详情。
  • 计费示例 以包年/包月公网NAT网关计费模式为例,假设您在2023/03/08 15:50:04购买了一个包年/包月公网NAT网关(产品规格为:小型),购买时长为一个月,并在到期前手动续费1个月,产生的费用如包年/包月公网NAT网关费用计算示例所示: 表2 包年/包月公网NAT网关费用计算示例 计费周期 计费公式 费用总和(元) 1个月(2023/03/08 15:50:04 ~ 2023/04/08 23:59:59) 规格单价*购买时长 306*1=306 1个月(2023/04/08 23:59:59 ~ 2023/05/08 23:59:59) 306*1=306
  • 计费示例 公网NAT网关 假设您在2023/04/18 6:00:00购买了一个按需计费的公网NAT网关,产品规格为小型,然后在2023/4/19 9:00:00将其删除,则产生的费用如表所示: 表1 按需(天)计费公网NAT网关费用计算示例 计费周期 计费公式 费用总和(元) 1天(2023/04/18 6:00:00 ~ 2023/04/18 8:00:00) 规格单价*购买时长 12*1=12 1天(2023/04/18 8:00:00 ~ 2023/04/19 8:00:00) 12*1=12 1天(2023/4/19 08:00:00 ~ 2023/4/20 8:00:00) 12*1=12 私网NAT网关 您在2023/04/18 8:45:00购买了一个按小时计费的私网NAT网关,产品规格为小型,然后在2023/04/18 9:55:00将其删除。则产生的费用如下表所示: 表2 按需(小时)计费私网NAT网关费用计算示例 计费周期 计费公式 费用总和(元) 1小时(2023/04/18 8:00:00 ~ 2023/04/18 9:00:00) 规格单价*购买时长 0.5/(3600)*900=0.125 1小时(2023/04/18 9:00:00 ~ 2023/04/18 10:00:00) 0.5/(3600)*3300=0.49 上述价格仅供参考,实际计算请以NAT网关价格详情中的价格为准。 产品价格详情中标出了资源的每小时价格,如果资源的计费时长不足1小时,那么计费时长需要按秒计算,此时需要将每小时价格除以3600,得到每秒价格,然后去计算费用,即:每秒价格 = XXX单价 / 3600 。
  • 变更配置对计费的影响 如果您在购买按需计费公网NAT网关后变更了配置,修改规格后,将按照当日使用的最大规格进行计费。 例如,您在2023/04/18 9:00:00购买了一个按需计费的公网NAT网关,产品规格为小型,并在9:30:00升配规格为中型,截止2023/04/18 10:30:00将其删除。计费周期为2023/04/18 8:00:00~2023/04/19 8:00:00,在计费周期内按照产品规格为中型计费。 如果您在购买按需计费私网NAT网关后变更了配置,修改规格后,按照当前计费周期(按小时)内变更前和变更后分别计费,精确到秒。 例如,您在2023/04/18 9:00:00购买了一个按小时计费的私网NAT网关,产品规格为小型,并在9:30:00升配规格为中型,截止2023/04/18 10:30:00将其删除。第一个计费周期为2023/04/18 9:00:00~2023/04/19 10:00:00,在9:00:00 ~ 9:30:00间产生的费用按照产品规格为小型计费,在9:30:00 ~ 10:00:00间产生的费用按照产品规格为中型计费。第二个计费周期为2023/04/18 10:00:00~2023/04/19 11:00:00,在10:00:00 ~ 10:30:00间产生的费用按照产品规格为中型计费。
  • 计费周期 公网NAT网关 按需计费公网NAT网关资源按天计费,按天计费模式的计费周期为:从前一天早上8点至第二天早上8点为一天,不满一天的按一天计算。 例如,您在2023/4/18 06:00:00购买了一个按天计费的公网NAT网关,产品规格为小型,截止2023/4/19 9:00:00将其删除。 第一个计费周期为2023/4/18 06:00:00 ~ 2023/4/18 8:00:00,该计费周期内的计费时长为一天 第二个计费周期为2023/4/18 08:00:00 ~ 2023/4/19 8:00:00,该计费周期内的计费时长为一天 第三个计费周期为2023/4/19 08:00:00 ~ 2023/4/20 8:00:00,该计费周期内的计费时长为一天 私网NAT网关 按需计费私网NAT网关资源按秒计费,每一个小时整点结算一次费用(以GMT+8时间为准),结算完毕后进入新的计费周期。计费的起点以实例创建成功的时间点为准,终点以实例删除时间为准。 例如,您在2023/04/18 8:45:30购买了一个按需计费的私网NAT网关,产品规格为小型,然后在2023/04/18 8:55:30将其删除,则计费周期为8:00:00 ~ 9:00:00,在8:45:30 ~ 8:55:30间产生费用,该计费周期内的计费时长为600秒。
  • 在续费管理页面开通自动续费 登录管理控制台。 单击“控制台”页面上方“费用与成本”,在下拉菜单中选择“续费管理”。 进入“续费管理”页面。 自定义查询条件。 可在“自动续费项”页签查询已经开通自动续费的资源。 可对“手动续费项”、“到期转按需项”、“到期不续费项”页签的资源开通自动续费。 图2 续费管理 为包年/包月资源开通自动续费。 单个资源开通自动续费:选择需要开通自动续费的NAT网关,单击操作列“开通自动续费”。 图3 单个资源开通自动续费 批量资源开通自动续费:选择需要开通自动续费的NAT网关,单击列表左上角的“开通自动续费”。 图4 多个资源开通自动续费 选择续费时长,并根据需要设置自动续费次数,单击“开通”。 图5 开通自动续费
  • 计费模式概述 NAT网关提供包年/包月、按需计费两种计费模式,以满足不同场景下的用户需求。 包年/包月:一种预付费模式,即先付费再使用,按照订单的购买周期进行结算。购买周期越长,享受的折扣越大。一般适用于设备需求量长期稳定的成熟业务。 按需计费:一种后付费模式,即先使用再付费。按需计费又分为按天计费和按小时计费。按需计费模式允许您根据实际业务需求灵活地调整资源使用,无需提前预置资源,从而降低预置过多或不足的风险。 表1 计费模式 计费模式 包年/包月 按需计费 付费方式 预付费 按照订单的购买周期结算。 后付费 按照NAT网关实际使用时长计费。 计费周期 按订单的购买周期计费。 按天计费和按小时计费(秒级计费,按小时结算。) 适用计费项 网关实例类型和规格类型 网关实例类型和规格类型 变更计费模式 支持变更为按需计费模式。 但包年/包月资费模式到期后,按需的资费模式才会生效。 具体请参见:包年/包月转按需 支持变更为包年/包月计费模式。 具体请参见:按需转包年/包月 变更规格 公网NAT网关只支持升级实例规格,不支持降低实例规格。 支持变更实例规格。 适用场景 适用于可预估资源使用周期的场景,价格比按需计费模式更优惠。对于长期使用者,推荐该方式。 适用于资源需求波动的场景,可以随时开通,随时删除。 私网NAT网关不支持包年/包月计费模式,只支持按需计费模式。 父主题: 计费模式
  • 请求方法:POST 接口URL:生产地址+固定子路径,其中固定子路径为/produceAPI/authSync; 接口示例:生产地址为https://example.isv.com,则接口URL为https://example.isv.com/produceAPI/authSync Headers参数 参数 必选 参数类型 描述 authToken M String(255) 签名信息,请参考auth Token取值说明。 BODY请求参数 参数 必选 参数类型 描述 instanceId M String(64) 说明: 卖家申请应用凭证的时候传空,买家必传。 tenantId M String(64) 租户ID,与租户同步的接口租户ID保持一致,这个ID是买家 appId M String(64) 应用ID,与应用同步的应用ID保持一致的 userList M String 授权用户信息,包含userName:账号名(M)、name:姓名(M)、position:职位(O)、orgCode:部门(M)、role:角色(user-普通用户,admin-管理员)(M)、enable:账号状态(true-启用,false-禁用)(M)、employeeCode:工号(O)、employeeType:人员类型(1:正式 2:实习 3:劳务派遣 4:劳务外包)(O)、mobile:手机号(O)、email:邮箱(O)、workPlace:工作所在地(O)、entryDate:入职时间(yyyy-MM-d)(O) JSON串,例: [{\"userName\":\"zhangsan01\",\"name\":\"张三\",\"position\":\"系统管理员\",\"orgCode\":\"123456789\",\"role\":\"admin\",\"enable\":\"true\",\"employeeCode\":\"\",\"mobile\":\"\",\"email\":\"\",\"extension\":{\"entryDate\":\"2022-11-9\",\"employeeType\":\"4\",\"workPlace\":\"南京\"}},{\"userName\":\"lisi02\",\"name\":\"李四\",\"position\":\"运营经理\",\"orgCode\":\"123456789\",\"role\":\"user\",\"enable\":\"true\",\"extension\":{\"entryDate\":\"2022-11-16\",\"employeeType\":\"4\",\"workPlace\":\"南京\"}}] 商家需要根据角色给用户进行赋权,如果admin赋予管理员角色 最大一次同步用户数是500个 currentSyncTime M String 默认时区东8区,时间戳,时间格式:20220420114117642 flag M Integer(2) 0-删除 1-新增 2-修改 testFlag M Integer(2) 0-生产正式数据 1-调测数据 timeStamp M String 默认时区东8区,时间戳,时间格式:20220420114117642 响应参数 参数 必选 参数类型 描述 resultCode M String(6) 响应码, 具体请参见调用结果码说明。 resultMsg O String(255) 响应信息 示例: POST https://example.isv.com/produceAPI/authSync Connection: keep-alive Content-Type: application/json authToken: "stbNYl*****************Ubt271qDr6WDAVLtLRb” Host: example.isv.com User-Agent: Apache-HttpClient/4.5.3 (Java/1.8.0_191) { "instanceId": "huaiweitest123456", "tenantId": "68cbc86ab******92f36422fa0e", "appId": "KSID******34456", "userList": "[{ userName:\"zhangsan01\",name:\"张三\",position:\"系统管理员\",orgCode:\"123456789\",role:\"admin\" enable:\"true\"},{ userName:\"lisi\",name:\"李四\",position:\"用户\",orgCode:\"123456789\",role:\"user\" enable:\"true\"},]", " currentSyncTime": "20220413093539534", "flag": 1, "testFlag": 0, "timeStamp": "20220413093539534", } HTTP/1.1 200 OK Body-Sign: sign_type="HMAC-SHA256", signature= "xxxxxxxxxx" Content-Type: application/json { " resultCode": "000000", " resultMsg": "Success" } HTTP Body签名: Body-Sign: sign_type="HMAC-SHA256", signature= "xxxxxxxxxxxxx" ,详情参考《HTTP Body签名》。
  • 接口说明 管理员被授权管理某企业后,登录到华为云买家中心控制台,对企业内用户授权该企业已绑定的应用,云商店异步调用该接口请求商家同步该企业应用的用户授权信息,商家接口需要执行授权信息同步,保存用户授权信息,并返回通知云商店。 针对租户应用授权信息同步场景接口调用失败的情况,由企业管理员选择是否要继续进行同步。并用短信或邮件的形式通知商家接口调用失败。 商家的服务器在处理接口请求时,需要做好幂等性处理。 对于同一个实例,相同的租户,相同的应用,相同的userName,要支持多次请求新增,或者删除,多次新增不应产生新的数据,且需要返回成功,如果是删除,多次删除也需要返回成功,不能因已删除返回失败,删除时不需要校验(创建实例)接口产生的实例是否存在。 租户同步流程如下图所示:
  • 请求方法:POST 接口URL:生产地址+固定子路径,其中固定子路径为/produceAPI/allOrgSync; 接口示例:生产地址为https://example.isv.com,则接口URL为https://example.isv.com/produceAPI/allOrgSync Headers参数 参数 必选 参数类型 描述 authToken M String(255) 签名信息,请参考auth Token取值说明。 BODY请求参数 参数 必选 参数类型 描述 instanceId M String(64) 说明: 卖家申请应用凭证的时候传空,买家必传。 tenantId M String(64) 租户ID orgInfo M String 组织内部门层级信息,包含部门代码、部门名称、上级部门Code,Json串,非树形结构 JSON串,例: [{\"orgCode\":\"00000001\", \"name\":\"产品部\",\"parentCode\":\"265789314\"},{\"orgCode\":\"00000002\", \"name\":\"测试部\",\"parentCode\":\"265789314\"}] testFlag M Integer(2) 0-生产正式数据1-调测数据 timeStamp M String 默认时区东8区,时间戳,时间格式:20220420114117642 响应参数 参数 必选 参数类型 描述 resultCode M String(6) 响应码, 具体请参见调用结果码说明。 resultMsg O String(255) 响应信息 示例: POST https://example.isv.com/produceAPI/allOrgSync Connection: keep-alive Content-Type: application/json authToken: "stbNYluH*********Dr6WDAVLtLRb” Host: example.isv.com User-Agent: Apache-HttpClient/4.5.3 (Java/1.8.0_191) { "instanceId": "hua******t123456", "tenantId": "68cbc8******b880d92f36422fa0e", "orgInfo": "[{orgCode:\"00000001\", name:\"产品部\", parentCode:\"265789314\" },{orgCode:\"00000002\", name:\"测试部\", parentCode:\"265789314\" }]", "flag": 1, "testFlag": 0, "timeStamp": "20220413093539534" , } HTTP/1.1 200 OK Body-Sign: sign_type="HMAC-SHA256", signature= "xxxxxxxxxx" Content-Type: application/json { " resultCode": "000000", " resultMsg": "Success" } HTTP Body签名: Body-Sign: sign_type="HMAC-SHA256", signature= "xxxxxxxxxxxxx" ,详情参考《HTTP Body签名》。
  • 接口说明 按周期售卖的商品,用户试用转正、续费、退续费后,云商店调用该接口,更新实例的到期日期。 用户进行商品转正、续费下单或退订续费周期后,云商店将调用该接口请求商家执行业务变更,商家接口需要执行将到期日进行更新,并返回通知云商店。 商家需要保障更新实例接口通畅,如调用失败,将可能导致用户的业务被释放的风险。 请及时关注商家信息中客服邮箱以及云商店账号绑定的邮箱的通知,收到调用失败通知邮件及时处理接口异常。 云商店会对接口异常的情况做监控,如SaaS商品频繁出现因接口异常的情况,云商店将对该商品做下架处理。 商品更新实例流程如下图所示:
  • 接口说明 买家购买联营SaaS商品后,登录到华为云买家中心控制台,将应用与企业绑定时,云商店调用该接口请求商家同步该企业的租户信息,商家接口需要执行租户同步,保存租户信息,并返回通知云商店。 针对租户同步场景接口调用失败的情况,由买家选择是否重试,并用短信或邮件的形式通知商家接口调用失败。 商家的服务器在处理接口请求时,需要做好幂等性处理。 对于同一个实例,相同的租户要支持多次请求新增,或者删除,多次新增不应产生新的数据,且需要返回成功,如果是删除,多次删除也需要返回成功,不能因已删除返回失败,删除时不需要校验(创建实例)接口产生的实例是否存在。 租户同步流程如下图所示:
共100000条