跳转至

更新未开通服务的订单

1. 接口描述

接口请求路径:POST /prod-api/acdn/volc/hostAcceleratePackRest/updateHostAcceleratePackOrder

updateHostAcceleratePackOrder 用于更新未开通服务的主播加速服务订单。例如在 2023 年 11 月 1 日 13 时创建完成订单,按服务开通规则将在 2023 年 11 月 2 日 0 时开通服务,因此仅支持在创建当日开通前通过本接口更新订单。

注意事项:单用户请求频率限制为 10 次/秒。

Token 获取方式见 密钥鉴权

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
updateOrders [UpdatePackOrder] 待更新的订单列表

3. 示例

示例1 更新未开通服务的订单

输入示例

{
  "updateOrders": [
    {
      "province": "粤",
      "endMonthTime": "2023-11-5",
      "isRenew": true,
      "source": "联通",
      "orderId": "178722568801546",
      "uid": "7515673778",
      "nickname": "范涛"
    }
  ]
}

代码调用

请将 {登录域名}token 替换为实际值。

import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.ContentType;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

public class UpdateHostAcceleratePackOrderTest {

    public static void main(String[] args) throws Exception {
        String url = "https://{登录域名}/prod-api/acdn/volc/hostAcceleratePackRest/updateHostAcceleratePackOrder";
        String token = "eyJhbGciOiJIUzUxMiJ9.xxxxxx";

        String requestBody = "{"
                + "\"updateOrders\":[{"
                + "\"province\":\"粤\","
                + "\"endMonthTime\":\"2023-11-5\","
                + "\"isRenew\":true,"
                + "\"source\":\"联通\","
                + "\"orderId\":\"178722568801546\","
                + "\"uid\":\"7515673778\","
                + "\"nickname\":\"范涛\""
                + "}]"
                + "}";

        try (CloseableHttpClient httpClient = HttpClients.createDefault()) {
            HttpPost httpPost = new HttpPost(url);
            httpPost.setHeader("Authorization", "Bearer " + token);
            httpPost.setEntity(new StringEntity(requestBody, ContentType.APPLICATION_JSON));

            try (CloseableHttpResponse response = httpClient.execute(httpPost)) {
                int statusCode = response.getStatusLine().getStatusCode();
                String body = EntityUtils.toString(response.getEntity(), "UTF-8");
                System.out.println("Status Code: " + statusCode);
                System.out.println("Body: " + body);
            }
        }
    }
}
package main

import (
    "bytes"
    "fmt"
    "io"
    "net/http"
)

func main() {
    url := "https://{登录域名}/prod-api/acdn/volc/hostAcceleratePackRest/updateHostAcceleratePackOrder"
    token := "eyJhbGciOiJIUzUxMiJ9.xxxxxx"

    requestBody := []byte(`{
  "updateOrders": [
    {
      "province": "粤",
      "endMonthTime": "2023-11-5",
      "isRenew": true,
      "source": "联通",
      "orderId": "178722568801546",
      "uid": "7515673778",
      "nickname": "范涛"
    }
  ]
}`)

    req, err := http.NewRequest(http.MethodPost, url, bytes.NewReader(requestBody))
    if err != nil {
        panic(err)
    }
    req.Header.Set("Authorization", "Bearer "+token)
    req.Header.Set("Content-Type", "application/json")

    resp, err := http.DefaultClient.Do(req)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    body, err := io.ReadAll(resp.Body)
    if err != nil {
        panic(err)
    }
    fmt.Println("Status Code:", resp.StatusCode)
    fmt.Println("Body:", string(body))
}

输出示例

{
  "msg": "操作成功",
  "code": 200,
  "data": [
    {
      "startTime": "2024-01-17",
      "source": "联通",
      "uid": "75116945778",
      "status": 1,
      "orderId": "17877898567801546",
      "isRenew": true,
      "province": "粤",
      "endTime": "2024-04-30"
    }
  ]
}

4. 输出参数

参数名称 类型 描述
code Integer 状态码。示例值:200
msg String 提示信息。示例值:操作成功
data Array 更新结果列表
data[].orderId String 订单 ID。示例值:17877898567801546
data[].uid String 抖音 uid。示例值:75116945778
data[].source String 运营商名称。示例值:联通
data[].province String 省份简称。示例值:
data[].isRenew Boolean 是否开启按月自动续订
data[].startTime String 服务开始时间。示例值:2024-01-17
data[].endTime String 服务结束时间。示例值:2024-04-30
data[].status Integer 更新订单状态,支持以下值:
1:更新成功
2:OrderId 和 Uid 不匹配
3:抖音昵称不规范,如超出长度限制等
4:EndMonthTime 格式错误
5:订单生效时间范围错误
6:订单不存在
7:订单不可更新
8:省份简称错误
9:运营商名称错误
10:内部服务错误

5. 错误码

HTTP 状态码 / 业务提示 描述
200 成功
401 未鉴权或 Token 无效
403 无权限
请输入参数 请求体为空
请输入需要退订的订单 updateOrders 为空
发起失败,存在无效的orderId 存在不属于当前账号或无效的订单 ID

6. 数据模型

UpdatePackOrder

待更新(未开通)的订单项。

参数名称 必选 类型 描述
orderId String 订单 ID
示例值:178722568801546
uid String 抖音 uid
示例值:7515673778
endMonthTime String 结束时间。开启按月自动续订时,须配置任意大于或等于开通服务(非创建订单)的时间;服务开通与结束时间不能为同一天
示例值:2023-11-5
isRenew Boolean 是否开启按月自动续订。true:是;false:否
示例值:true
source String 运营商名称,支持以下值:
联通:联通
移动:移动
电信:电信
示例值:联通
nickname String 昵称
示例值:范涛
province String 当前所在省份简称
示例值: