# 批量创建记录集 - BatchCreateRecordSetsTask
#### 功能介绍
提交批量创建记录集任务，返回任务ID。
#### 接口约束
支持公网域名和内网域名。
每个任务最多支持2000条记录集。
同一个域名下只允许存在一个任务。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-dns/zh-cn_topic_0037134405.html)。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-dns/dns_api_70000.html)。
- 如果使用身份策略授权，当前API调用无需身份策略权限。
 
#### URI
POST /v2.1/zones/{zone_id}/recordsets/batch-create-task
表1路径参数 
| 参数      | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|:---|
| zone_id | 是    | String | **参数解释：** 域名ID。 获取方式：通过查询公网域名列表（ListPublicZones）或内网域名列表（ListPrivateZones）接口获取。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
#### 请求参数
表2请求Body参数 
| 参数         | 是否必选 | 参数类型                                                                                                                                             | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| recordsets | 是    | Array of [BatchCreateRecordSetsTaskItem] objects | **参数解释：** 批量创建记录集列表。 该字段为数组，每个元素包含记录集ID、名称、类型、TTL及解析记录值列表等字段。 **约束限制：** - 每个任务支持创建1\~2000条记录集。    |
   
 表3BatchCreateRecordSetsTaskItem 
| 参数          | 是否必选 | 参数类型             | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|:---|
| name        | 否    | String           | **参数解释：** 主机记录或域名。 末尾有点则认为是完整域名，如果不包含点，则认为是域名前缀。例如： 输入"www"，创建成功后域名显示为"www.example.com." 输入"www.example.com."（注意域名末尾有点），创建成功后域名显示为"www.example.com." 输入"www.example.com"（注意域名末尾没有点），创建成功后域名显示为"www.example.com.example.com." **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| type        | 是    | String           | **参数解释：** 记录集的类型。 **约束限制：** 不涉及。 **取值范围：** - A：将域名解析到指定的IPv4地址。   - AAAA：将域名解析到指定的IPv6地址。   - MX：指定域名对应的邮件服务器。   - CNAME：将域名解析到另一域名，或者多个域名映射到同一域名上。   - TXT：用于对域名进行标识和说明。   - SRV：用于记录某台服务器对外提供了哪些服务。   - NS：指定域名的权威DNS服务器，当前接口仅支持公网域名解析。   - REDIRECT_URL：显性URL转发，仅支持公网域名解析。   - FORWARD_URL：隐性URL转发，仅支持公网域名解析。   - CAA：指定为域名颁发HTTPS证书的授权CA机构，仅支持公网域名解析。   - PTR：指定IP地址反向解析记录，仅支持内网域名解析。    **默认取值：** 不涉及。 |
| line        | 否    | String           | **参数解释：** 解析线路ID。 获取线路ID请参见[获取线路ID](https://support.huaweicloud.com/api-dns/zh-cn_topic_0085546214.html)。也可通过查询自定义线路（ListCustomLine）或查询线路分组列表（ListLineGroups）接口获取。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ttl         | 否    | Integer          | **参数解释：** 解析记录在本地DNS服务器的缓存时间，缓存时间越长更新生效越慢，以秒为单位。 **约束限制：** 不涉及。 **取值范围：** 1\~2147483647。 **默认取值：** 300                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| weight      | 否    | Integer          | **参数解释：** 解析记录的权重。 **约束限制：** MX记录集不支持权重，创建时会忽略权重字段，如果您的MX记录集有多个值，在一条记录集里写多个值即可。(若存在多条同主机记录、同线路类型的MX记录，会自动合并为一条创建) **取值范围：** 0\~1000。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| records     | 是    | Array of strings | **参数解释：** 解析记录的值。不同类型解析记录对应的值的规则不同。 该字段为字符串数组，每个元素为一条解析记录值。 **约束限制：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| status      | 否    | String           | **参数解释：** 解析记录的状态。 **约束限制：** 不涉及。 **取值范围：** - ENABLE：启用解析   - DISABLE：暂停解析    **默认取值：** ENABLE。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| description | 否    | String           | **参数解释：** 记录集的描述信息。 **约束限制：** 不涉及。 **取值范围：** 长度不超过255个字符。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
   
#### 响应参数
**状态码：202**
表4响应Body参数 
| 参数      | 参数类型   | 描述                                                                                                                                                                                                                                                                   |
|:---|:---|:---|
| task_id | String | **参数解释：** 批量创建记录集任务的ID。 **取值范围：** 不涉及。 |
   
#### 请求示例
批量创建记录集。
```
POST https://{Endpoint}/v2.1/zones/{zone_id}/recordsets/batch-create-task
{
  "recordsets" : [ {
    "name" : "www.example.com.",
    "type" : "A",
    "line" : "default_view",
    "ttl" : 300,
    "weight" : 1,
    "records" : [ "192.168.10.1", "192.168.10.2" ],
    "status" : "ENABLE",
    "description" : "This is an example record set."
  } ]
}
```
#### 响应示例
**状态码：202**
```
{
  "task_id" : "9a186e66977dd48f01977e021c480cac"
}
```
#### SDK代码示例
SDK代码示例如下。
- [Java]
  批量创建记录集。
  ```
  package com.huaweicloud.sdk.test;
  import com.huaweicloud.sdk.core.auth.ICredential;
  import com.huaweicloud.sdk.core.auth.BasicCredentials;
  import com.huaweicloud.sdk.core.exception.ConnectionException;
  import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
  import com.huaweicloud.sdk.core.exception.ServiceResponseException;
  import com.huaweicloud.sdk.dns.v2.region.DnsRegion;
  import com.huaweicloud.sdk.dns.v2.*;
  import com.huaweicloud.sdk.dns.v2.model.*;
  import java.util.List;
  import java.util.ArrayList;
  public class BatchCreateRecordSetsTaskSolution {
      public static void main(String[] args) {
          // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
          // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
          String ak = System.getenv("CLOUD_SDK_AK");
          String sk = System.getenv("CLOUD_SDK_SK");
          ICredential auth = new BasicCredentials()
                  .withAk(ak)
                  .withSk(sk);
          DnsClient client = DnsClient.newBuilder()
                  .withCredential(auth)
                  .withRegion(DnsRegion.valueOf("<YOUR REGION>"))
                  .build();
          BatchCreateRecordSetsTaskRequest request = new BatchCreateRecordSetsTaskRequest();
          request.withZoneId("{zone_id}");
          BatchCreateRecordSetsTaskRequestBody body = new BatchCreateRecordSetsTaskRequestBody();
          List<String> listRecordsetsRecords = new ArrayList<>();
          listRecordsetsRecords.add("192.168.10.1");
          listRecordsetsRecords.add("192.168.10.2");
          List<BatchCreateRecordSetsTaskItem> listbodyRecordsets = new ArrayList<>();
          listbodyRecordsets.add(
              new BatchCreateRecordSetsTaskItem()
                  .withName("www.example.com.")
                  .withType("A")
                  .withLine("default_view")
                  .withTtl(300)
                  .withWeight(1)
                  .withRecords(listRecordsetsRecords)
                  .withStatus("ENABLE")
                  .withDescription("This is an example record set.")
          );
          body.withRecordsets(listbodyRecordsets);
          request.withBody(body);
          try {
              BatchCreateRecordSetsTaskResponse response = client.batchCreateRecordSetsTask(request);
              System.out.println(response.toString());
          } catch (ConnectionException e) {
              e.printStackTrace();
          } catch (RequestTimeoutException e) {
              e.printStackTrace();
          } catch (ServiceResponseException e) {
              e.printStackTrace();
              System.out.println(e.getHttpStatusCode());
              System.out.println(e.getRequestId());
              System.out.println(e.getErrorCode());
              System.out.println(e.getErrorMsg());
          }
      }
  }
  ```
- [Python]
  批量创建记录集。
  ```
  # coding: utf-8
  import os
  from huaweicloudsdkcore.auth.credentials import BasicCredentials
  from huaweicloudsdkdns.v2.region.dns_region import DnsRegion
  from huaweicloudsdkcore.exceptions import exceptions
  from huaweicloudsdkdns.v2 import *
  if __name__ == "__main__":
      # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
      # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
      ak = os.environ["CLOUD_SDK_AK"]
      sk = os.environ["CLOUD_SDK_SK"]
      credentials = BasicCredentials(ak, sk)
      client = DnsClient.new_builder() \
          .with_credentials(credentials) \
          .with_region(DnsRegion.value_of("<YOUR REGION>")) \
          .build()
      try:
          request = BatchCreateRecordSetsTaskRequest()
          request.zone_id = "{zone_id}"
          listRecordsRecordsets = [
              "192.168.10.1",
              "192.168.10.2"
          ]
          listRecordsetsbody = [
              BatchCreateRecordSetsTaskItem(
                  name="www.example.com.",
                  type="A",
                  line="default_view",
                  ttl=300,
                  weight=1,
                  records=listRecordsRecordsets,
                  status="ENABLE",
                  description="This is an example record set."
              )
          ]
          request.body = BatchCreateRecordSetsTaskRequestBody(
              recordsets=listRecordsetsbody
          )
          response = client.batch_create_record_sets_task(request)
          print(response)
      except exceptions.ClientRequestException as e:
          print(e.status_code)
          print(e.request_id)
          print(e.error_code)
          print(e.error_msg)
  ```
- [Go]
  批量创建记录集。
  ```
  package main
  import (
  "fmt"
  "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
      dns "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dns/v2"
  "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dns/v2/model"
      region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dns/v2/region"
  )
  func main() {
      // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
      // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
      ak := os.Getenv("CLOUD_SDK_AK")
      sk := os.Getenv("CLOUD_SDK_SK")
      auth, err := basic.NewCredentialsBuilder().
          WithAk(ak).
          WithSk(sk).
          SafeBuild()
      if err != nil {
          fmt.Println(err)
          return
      }
      hcClient, err := dns.DnsClientBuilder().
           WithRegion(region.ValueOf("<YOUR REGION>")).
           WithCredential(auth).
           SafeBuild()
      if err != nil {
          fmt.Println(err)
          return
      }
      client := dns.NewDnsClient(hcClient)
      request := &model.BatchCreateRecordSetsTaskRequest{}
  request.ZoneId = "{zone_id}"
  var listRecordsRecordsets = []string{
          "192.168.10.1",
      "192.168.10.2",
      }
  nameRecordsets:= "www.example.com."
  lineRecordsets:= "default_view"
  ttlRecordsets:= int32(300)
  weightRecordsets:= int32(1)
  statusRecordsets:= "ENABLE"
  descriptionRecordsets:= "This is an example record set."
  var listRecordsetsbody = []model.BatchCreateRecordSetsTaskItem{
          {
              Name: &nameRecordsets,
              Type: "A",
              Line: &lineRecordsets,
              Ttl: &ttlRecordsets,
              Weight: &weightRecordsets,
              Records: listRecordsRecordsets,
              Status: &statusRecordsets,
              Description: &descriptionRecordsets,
          },
      }
  request.Body = &model.BatchCreateRecordSetsTaskRequestBody{
  Recordsets: listRecordsetsbody,
  }
  response, err := client.BatchCreateRecordSetsTask(request)
  if err == nil {
          fmt.Printf("%+v\n", response)
      } else {
          fmt.Println(err)
      }
  }
  ```
- [更多]
  更多编程语言的SDK代码示例，请参见[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/DNS/sdk?api=BatchCreateRecordSetsTask)的代码示例页签，可生成自动对应的SDK代码示例。
#### 状态码
| 状态码 | 描述         |
|:---|:---|
| 202 | 批量创建记录集响应。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-dns/ErrorCode.html)。
