跳转至

创建直播加速订单

1. 接口描述

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

createHostAcceleratePackOrder 用于创建主播加速服务订单。仅在购买加速包后付费项目后,才可通过本接口创建订单。若仅用于测试接口而非正式创建订单,请联系技术支持配置测试账号。

订单的创建时间不同,加速服务的开通时间也不同:

  • 若在当天 17 时之前创建完成订单,将在次日 0 时开通服务。
  • 若在当天 17 时之后创建完成订单,将在后日 0 时开通服务。

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

Token 获取方式见 密钥鉴权

2. 输入参数

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

参数名称 必选 类型 描述
packOrder [CreatePackOrder] 待创建的订单列表

3. 示例

示例1 创建直播加速订单

输入示例

{
  "packOrder": [
    {
      "douyinId": "70",
      "source": "联通",
      "uid": "94",
      "province": "粤",
      "endMonthTime": "2024-02",
      "isRenew": false,
      "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 CreateHostAcceleratePackOrderTest {

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

        String requestBody = "{"
                + "\"packOrder\":[{"
                + "\"douyinId\":\"70\","
                + "\"source\":\"联通\","
                + "\"uid\":\"94\","
                + "\"province\":\"粤\","
                + "\"endMonthTime\":\"2024-02\","
                + "\"isRenew\":false,"
                + "\"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/createHostAcceleratePackOrder"
    token := "eyJhbGciOiJIUzUxMiJ9.xxxxxx"

    requestBody := []byte(`{
  "packOrder": [
    {
      "douyinId": "70",
      "source": "联通",
      "uid": "94",
      "province": "粤",
      "endMonthTime": "2024-02",
      "isRenew": false,
      "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-18",
      "source": "联通",
      "uid": "94",
      "status": 2,
      "orderId": "",
      "douyinId": "70",
      "isRenew": false,
      "province": "粤",
      "endTime": "1987-06-18 10:19:28"
    }
  ]
}

4. 输出参数

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

5. 错误码

HTTP 状态码 / 业务提示 描述
200 成功
401 未鉴权或 Token 无效
403 无权限
请输入参数 请求体为空
配额不足,创建失败!请联系客户添加配额 未配置订单配额
配额不足,当前使用量(x/y),创建失败!请联系客户添加配额 已用配额达到或超过总配额

6. 数据模型

CreatePackOrder

待创建的主播加速订单项。

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