Updated on 2024-07-25 GMT+08:00

Applying a Certificate to a Domain Name

Function

This API is used to apply a certificate to a domain name.

URI

POST /v1/{project_id}/waf/certificate/{certificate_id}/apply-to-hosts

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID

certificate_id

Yes

String

HTTPS certificate ID. It can be obtained by calling the ListCertificates API.

Table 2 Query Parameters

Parameter

Mandatory

Type

Description

enterprise_project_id

No

String

ID of the enterprise project. It can be obtained by called the ListEnterpriseProject API of EPS.

Request Parameters

Table 3 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

User token. It can be obtained by calling the IAM API (value of X-Subject-Token in the response header).

Content-Type

Yes

String

Content type

Default: application/json;charset=utf8

Table 4 Request body parameters

Parameter

Mandatory

Type

Description

cloud_host_ids

No

Array of strings

ID of HTTPS domain name in cloud mode. It can be obtained by calling the ListHost API.

premium_host_ids

No

Array of strings

ID of the HTTPS domain name in dedicated mode. It can be obtained by calling the ListPremiumHost API.

Response Parameters

Status code: 200

Table 5 Response body parameters

Parameter

Type

Description

id

String

Certificate ID.

name

String

Certificate Name

timestamp

Long

Time.

expire_time

Long

Expiration date

bind_host

Array of CertificateBundingHostBody objects

Domain name list

Table 6 CertificateBundingHostBody

Parameter

Type

Description

id

String

Domain name ID

hostname

String

Domain Name

waf_type

String

WAF mode. The value can be cloud for the cloud mode or premium for the dedicated mode.

Enumeration values:

  • cloud

  • premium

Status code: 400

Table 7 Response body parameters

Parameter

Type

Description

error_code

String

Error Code

error_msg

String

Error Messages

Status code: 401

Table 8 Response body parameters

Parameter

Type

Description

error_code

String

Error Code

error_msg

String

Error Messages

Status code: 500

Table 9 Response body parameters

Parameter

Type

Description

error_code

String

Error Code

error_msg

String

Error Messages

Example Requests

GET https://{Endpoint}/v1/{project_id}/waf/certificate/{certificate_id}/apply-to-hosts?enterprise_project_id=0

{
  "cloud_host_ids" : [ "85e554189d494c0f97789e93531c9f90" ],
  "premium_host_ids" : [ "4e9e97c425fc463c8f374b90124e8392" ]
}

Example Responses

Status code: 200

Request succeeded.

{
  "id" : "3ac1402300374a63a05be68c641e92c8",
  "name" : "www.abc.com",
  "timestamp" : 1636343349139,
  "expire_time" : 1650794100000,
  "bind_host" : [ {
    "id" : "e350cf556da34adab1f017523d1c05ed",
    "hostname" : "www.demo.com",
    "waf_type" : "cloud",
    "bandwidth" : 0,
    "qps" : 0
  } ]
}

Status Codes

Status Code

Description

200

Request succeeded.

400

Request failed

401

Insufficient token permissions.

500

Internal server error.

Error Codes

See Error Codes.