DNS Plus 서비스의 API를 설명합니다.
[성공 응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
}
}
[실패 응답 본문]
{
"header": {
"isSuccessful": false,
"resultCode": 4010001,
"resultMessage": "Invalid appKey. "
}
}
[URI]
메서드 | URI |
---|---|
GET | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones |
[요청 본문]
curl -X GET 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones'
[옵션]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
zoneIdList | List | 최대 3,000개 | 선택 | DNS Zone ID 목록 | |
zoneStatusList | List | CREATING, DELETING, DELETING_FAIL, USE |
선택 | DNS Zone 상태 목록 (CREATING: 생성 중, DELETING: 삭제 중, DELETING_FAIL: 삭제 실패, USE: 사용) |
|
searchZoneName | String | 선택 | 검색할 DNS Zone 이름 | ||
engineId | String | 선택 | DNS 서버 ID | ||
page | int | 최소 1 | 선택 | 1 | 페이지 번호 |
limit | int | 최소 1, 최대 3,000 | 선택 | 50 | 조회 개수 |
sortDirection | String | DESC, ASC | 선택 | DESC | 정렬 방향(DESC: 내림차순, ASC: 오름차순) |
sortKey | String | CREATED_AT, UPDATED_AT, ZONE_NAME, ZONE_STATUS, RECORDSET_COUNT |
선택 | CREATED_AT | 정렬 대상 (CREATED_AT: 생성일, UPDATED_AT: 수정일, ZONE_NAME: DNS Zone 이름, ZONE_STATUS: DNS Zone 상태, RECORDSET_COUNT: 레코드 세트 개수) |
[응답 본문]
{
"header": {
// 생략
},
"totalCount": 1,
"zoneList": [
{
"engineId": "e13a1bcf0aa8e07f6a4fae94ed869c39",
"zoneId": "bff20a9a-24cf-4670-8b34-007622ec010e",
"zoneName": "test.dnsplus.com.",
"zoneStatus": "USE",
"description": "테스트",
"createdAt": "2019-06-04T12:32:50.000+09:00",
"updatedAt": "2019-06-04T12:32:50.000+09:00",
"recordsetCount": 2
}
]
}
[필드]
이름 | 타입 | 설명 |
---|---|---|
totalCount | long | 전체 DNS Zone 개수 |
zoneList | List | DNS Zone 목록 |
zoneList[0].engineId | boolean | DNS 서버 ID |
zoneList[0].zoneId | String | DNS Zone ID |
zoneList[0].zoneName | String | DNS Zone 이름 |
zoneList[0].zoneStatus | String | DNS Zone 상태 |
zoneList[0].description | String | 설명 |
zoneList[0].createdAt | DateTime | 생성일 |
zoneList[0].updatedAt | DateTime | 수정일 |
zoneList[0].recordsetCount | long | 레코드 세트 개수 |
[URI]
메서드 | URI |
---|---|
POST | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones |
[요청 본문]
curl -X POST 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones' \
-H 'Content-Type: application/json' \
--data '{ "zone": { "zoneName": "test.dnsplus.com.", "description": "test" }}'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
zone | Object | 필수 | DNS Zone | ||
zone.zoneName | String | 최대 254자 | 필수 | 생성할 DNS Zone 이름, 도메인을 FQDN으로 입력 |
|
zone.description | String | 최대 255자 | 선택 | DNS Zone 설명 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"zone": {
"engineId": "e13a1bcf0aa8e07f6a4fae94ed869c39",
"zoneId": "bff20a9a-24cf-4670-8b34-007622ec010e",
"zoneName": "test.dnsplus.com.",
"zoneStatus": "USE",
"description": "test",
"createdAt": "2019-06-04T12:32:50.000+09:00",
"updatedAt": "2019-06-04T12:32:50.000+09:00",
"recordsetCount": 2
}
}
[URI]
메서드 | URI |
---|---|
PUT | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones/{zoneId} |
[요청 본문]
curl -X PUT 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones/{zoneId}' \
-H 'Content-Type: application/json' \
--data '{ "zone": { "description": "test" }}'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
zone | Object | 필수 | DNS Zone | ||
zone.description | String | 최대 255자 | 선택 | DNS Zone 설명 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"zone": {
"engineId": "e13a1bcf0aa8e07f6a4fae94ed869c39",
"zoneId": "bff20a9a-24cf-4670-8b34-007622ec010e",
"zoneName": "test.dnsplus.com.",
"zoneStatus": "USE",
"description": "test",
"createdAt": "2019-06-04T12:32:50.000+09:00",
"updatedAt": "2019-06-04T12:42:00.000+09:00",
"recordsetCount": 2
}
}
[URI]
메서드 | URI |
---|---|
DELETE | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones/async |
[요청 본문]
curl -X DELETE 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones/async?
zoneIdList=bff20a9a-24cf-4670-8b34-007622ec010e,52bc0031-37eb-4b82-b4d7-eaab24188dc4'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
zoneIdList | List | 최소 1개, 최대 3,000개 | 필수 | DNS Zone ID 목록 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
}
}
[URI]
메서드 | URI |
---|---|
GET | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones/{zoneId}/recordsets |
[요청 본문]
curl -X GET 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones/{zoneId}/recordsets'
[옵션]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
recordsetIdList | List | 최대 3,000개 | 선택 | 레코드 세트 목록 | |
recordsetTypeList | List | A, AAAA, CAA, CNAME, MX, NAPTR, PTR, TXT, SRV, NS, SOA |
선택 | 레코드 세트 타입 목록 | |
searchRecordsetName | String | 선택 | 검색할 레코드 세트 이름 | ||
page | int | 최소 1 | 선택 | 1 | 페이지 번호 |
limit | int | 최소 1, 최대 3,000 | 선택 | 50 | 조회 개수 |
sortDirection | String | DESC, ASC | 선택 | DESC | 정렬 방향(DESC: 내림차순, ASC: 오름차순) |
sortKey | String | CREATED_AT, UPDATED_AT, RECORDSET_NAME, RECORDSET_TYPE, RECORDSET_TTL |
선택 | CREATED_AT | 정렬 대상 (CREATED_AT: 생성일, UPDATED_AT: 수정일, RECORDSET_NAME: 레코드 세트 이름, RECORDSET_TYPE: 레코드 세트 타입, RECORDSET_TTL: TTL(초)) |
[응답 본문]
{
"header": {
// 생략
},
"totalCount": 2,
"recordsetList": [
{
"recordsetId": "9e92b547-e2c1-4398-8904-552e0ca465e2",
"recordsetName": "test.dnsplus.com.",
"recordsetType": "SOA",
"recordsetTtl": 1500,
"recordsetStatus": "USE",
"createdAt": "2019-06-04T12:32:50.000+09:00",
"updatedAt": "2019-06-04T12:32:50.000+09:00",
"recordList": [
{
"recordDisabled": false,
"recordContent": "ns1.dnsplus.com. hostmaster.dnsplus.com. 2019060401 10800 3600 604800 1200",
// 생략: 레코드 세트 타입에 따라 다름
}
]
},
{
"recordsetId": "edb9512b-6e62-409c-99ee-092d340e0adf",
"recordsetName": "test.dnsplus.com.",
"recordsetType": "NS",
"recordsetTtl": 1500,
"recordsetStatus": "USE",
"createdAt": "2019-06-04T12:32:50.000+09:00",
"updatedAt": "2019-06-04T12:32:50.000+09:00",
"recordList": [
{
"recordDisabled": false,
"recordContent": "ns.toastdns-jin.com.",
// 생략: 레코드 세트 타입에 따라 다름
},
{
"recordDisabled": false,
"recordContent": "ns.toastdns-jin.net.",
// 생략: 레코드 세트 타입에 따라 다름
}
]
}
]
}
[필드]
이름 | 타입 | 설명 |
---|---|---|
totalCount | long | 전체 레코드 세트 개수 |
recordsetList | List | 레코드 세트 목록 |
recordsetList[0].recordsetId | String | 레코드 세트 ID |
recordsetList[0].recordsetName | String | 레코드 세트 이름 |
recordsetList[0].recordsetType | String | 레코드 세트 타입 |
recordsetList[0].recordsetTtl | int | 네임 서버에서 레코드 세트 정보의 갱신 주기 |
recordsetList[0].recordsetStatus | String | 레코드 세트 상태 |
recordsetList[0].createdAt | DateTime | 생성일 |
recordsetList[0].updatedAt | DateTime | 수정일 |
recordsetList[0].recordList | List | 레코드 목록 |
recordsetList[0].recordList[0].recordDisabled | boolean | 레코드 비활성화 여부 |
recordsetList[0].recordList[0].recordContent | String | 레코드값이며 레코드 세트 타입에 따른 상세 필드를 한 줄로 표시한 내용 |
[URI]
메서드 | URI |
---|---|
POST | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones/{zoneId}/recordsets |
[요청 본문]
curl -X POST 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones/{zoneId}/recordsets' \
-H 'Content-Type: application/json' \
--data '{ "recordset": { "recordsetName": "sub.test.dnsplus.com.", "recordsetType": "A", "recordsetTtl": 86400, "recordList": [{ "recordDisabled": false, "recordContent": "1.1.1.1" }] }}'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
recordset | Object | 필수 | 레코드 세트 | ||
recordset.recordsetName | String | 최대 254자 (DNS Zone 이름 포함) |
필수 | 생성할 레코드 세트 이름, 도메인을 FQDN으로 입력 |
|
recordset.recordsetType | String | A, AAAA, CAA, CNAME, MX, NAPTR, PTR, TXT, SRV, NS |
필수 | 레코드 세트 타입 | |
recordset.recordsetTtl | int | 최소 1, 최대 2147483647 | 필수 | 네임 서버에서 레코드 세트 정보의 갱신 주기 | |
recordset.recordList | List | 필수 | 레코드 목록 | ||
recordset.recordList[0].recordDisabled | boolean | 선택 | false | 레코드 비활성화 여부 | |
recordset.recordList[0].recordContent | String | 필수 | 레코드 세트 타입에 따른 상세 필드를 한 줄로 표시한 내용 |
[레코드 세트 타입에 따른 상세 필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
recordset.recordList[0].ipV4 | String | 필수 | IPv4 형식의 주소 |
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
recordset.recordList[0].ipV6 | String | 필수 | IPv6 형식의 주소 |
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
recordset.recordList[0].flags | int | 0 또는 128 | 필수 | 정의된 태그인 경우 0, 사용자 지정 태그인 경우 128 |
|
recordset.recordList[0].tag | String | TAG_ISSUE, TAG_ISSUEWILD, TAG_IODEF, 사용자 지정 태그 최대 15 |
필수 | TAG_ISSUE: issue 태그, TAG_ISSUEWILD: issuewild 태그, TAG_IODEF: iodef 태그, 사용자 지정 태그 |
|
recordset.recordList[0].stringValue | String | 최대 512자(인용부호 포함) | 필수 | 태그에 따른 내용 |
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
recordset.recordList[0].domainName | String | 최대 255자 | 필수 | 도메인을 FQDN으로 입력 |
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
recordset.recordList[0].priority | int | 최소 0, 최대 65535 | 필수 | 우선순위 | |
recordset.recordList[0].domainName | String | 최대 255자 | 필수 | 도메인을 FQDN으로 입력 |
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
recordset.recordList[0].order | int | 최소 0, 최대 65535 | 필수 | 순서 | |
recordset.recordList[0].preference | int | 최소 0, 최대 65535 | 필수 | 선호 순서 | |
recordset.recordList[0].flags | String | 최대 3자(인용부호 포함) | 필수 | 구분 | |
recordset.recordList[0].service | String | 최대 257자(인용부호 포함) | 필수 | 서비스 | |
recordset.recordList[0].regexp | String | 최대 257자(인용부호 포함) | 필수 | 정규식 | |
recordset.recordList[0].replacement | String | 최대 255자 | 필수 | 대체값으로 '.' 또는 도메인을 FQDN으로 입력 |
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
recordset.recordList[0].domainName | String | 최대 255자 | 필수 | 도메인을 FQDN으로 입력 |
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
recordset.recordList[0].stringValue | String | 최대 255바이트(인용부포 포함) | 필수 | 텍스트 내용 |
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
recordset.recordList[0].priority | int | 최소 0, 최대 65535 | 필수 | 우선순위 | |
recordset.recordList[0].weight | int | 최소 0, 최대 65535 | 필수 | 가중치 | |
recordset.recordList[0].port | int | 최소 0, 최대 65535 | 필수 | 포트 | |
recordset.recordList[0].domainName | String | 최대 255자 | 필수 | 도메인을 FQDN으로 입력 |
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
recordset.recordList[0].domainName | String | 최대 255자 | 필수 | 도메인을 FQDN으로 입력 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"recordset": {
"recordsetId": "d0b7ee57-8e41-438f-ad04-d4b316793d42",
"recordsetName": "sub.test.dnsplus.com.",
"recordsetType": "A",
"recordsetTtl": 86400,
"recordsetStatus": "USE",
"createdAt": "2019-06-04T12:32:50.000+09:00",
"updatedAt": "2019-06-04T12:32:50.000+09:00",
"recordList": [
{
"recordDisabled": false,
"recordContent": "1.1.1.1",
"ipV4": "1.1.1.1"
}
]
}
}
[URI]
메서드 | URI |
---|---|
POST | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones/{zoneId}/recordsets/list |
[요청 본문]
curl -X POST 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones/{zoneId}/recordsets/list' \
-H 'Content-Type: application/json' \
--data '{ "recordsetList": [{ "recordsetName": "sub.test.dnsplus.com.", "recordsetType": "A", "recordsetTtl": 86400, "recordList": [{ "recordDisabled": false, "recordContent": "1.1.1.1" }] }]}'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
recordsetList | List | 필수 | 레코드 세트 목록 | ||
recordsetList[0].recordsetName | String | 최대 254자 (DNS Zone 이름 포함) |
필수 | 생성할 레코드 세트 이름, 도메인을 FQDN으로 입력 |
|
recordsetList[0].recordsetType | String | A, AAAA, CAA, CNAME, MX, NAPTR, PTR, TXT, SRV, NS |
필수 | 레코드 세트 타입 | |
recordsetList[0].recordsetTtl | int | 최소 1, 최대 2147483647 | 필수 | 네임 서버에서 레코드 세트 정보의 갱신 주기 | |
recordsetList[0].recordList | List | 필수 | 레코드 목록 | ||
recordsetList[0].recordList[0].recordDisabled | boolean | 선택 | false | 레코드 비활성화 여부 | |
recordsetList[0].recordList[0].recordContent | String | 필수 | 레코드 세트 타입에 따른 상세 필드를 한 줄로 표시한 내용 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
}
}
[URI]
메서드 | URI |
---|---|
PUT | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones/{zoneId}/recordsets/{recordsetId} |
[요청 본문]
curl -X PUT 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones/{zoneId}/recordsets/{recordsetId}' \
-H 'Content-Type: application/json' \
--data '{ "recordset": { "recordsetType": "A", "recordsetTtl": 86400, "recordList": [{ "recordDisabled": false, "recordContent": "1.1.1.1" }] }}'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
recordset | Object | 필수 | 레코드 세트 | ||
recordset.recordsetType | String | A, AAAA, CAA, CNAME, MX, NAPTR, PTR, TXT, SRV, NS |
필수 | 레코드 세트 타입 | |
recordset.recordsetTtl | int | 최소 1, 최대 2147483647 | 필수 | 네임 서버에서 레코드 세트 정보의 갱신 주기 | |
recordset.recordList | List | 필수 | 레코드 목록 | ||
recordset.recordList[0].recordDisabled | boolean | 필수 | 레코드 비활성화 여부 | ||
recordset.recordList[0].recordContent | String | 필수 | 레코드 세트 타입에 따른 상세 필드를 한 줄로 표시한 내용 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"recordset": {
"recordsetId": "d0b7ee57-8e41-438f-ad04-d4b316793d42",
"recordsetName": "sub.test.dnsplus.com.",
"recordsetType": "A",
"recordsetTtl": 86400,
"recordsetStatus": "USE",
"createdAt": "2019-06-04T12:32:50.000+09:00",
"updatedAt": "2019-06-04T12:42:00.000+09:00",
"recordList": [
{
"recordDisabled": false,
"recordContent": "1.1.1.1",
"ipV4": "1.1.1.1"
}
]
}
}
[URI]
메서드 | URI |
---|---|
DELETE | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones/{zoneId}/recordsets |
[요청 본문]
curl -X DELETE 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/zones/{zoneId}/recordsets?
recordsetIdList=edb9512b-6e62-409c-99ee-092d340e0adf,edb9512b-6e62-409c-99ee-092d340e0adf'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
recordsetIdList | List | 최소 1개, 최대 3,000개 | 필수 | 레코드 세트 ID 목록 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
}
}
[URI]
메서드 | URI |
---|---|
GET | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/gslbs |
[요청 본문]
curl -X GET 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/gslbs?showHealthy=true'
[옵션]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
gslbIdList | List | 최대 3,000개 | 선택 | GSLB ID 목록 | |
searchGslbName | String | 선택 | 검색할 GSLB 이름 | ||
gslbDomain | String | 선택 | GSLB 도메인 | ||
showHealthy | boolean | 선택 | 헬스 체크 결과 보기 여부 | ||
page | int | 최소 1 | 선택 | 1 | 페이지 번호 |
limit | int | 최소 1, 최대 3,000 | 선택 | 50 | 조회 개수 |
sortDirection | String | DESC, ASC | 선택 | DESC | 정렬 방향(DESC: 내림차순, ASC: 오름차순) |
sortKey | String | CREATED_AT, UPDATED_AT, GSLB_NAME, GSLB_DOMAIN, GSLB_TTL, GSLB_ROUTING_RULE, GSLB_DISABLED |
선택 | CREATED_AT | 정렬 대상 (CREATED_AT: 생성일, UPDATED_AT: 수정일, GSLB_NAME: GSLB 이름, GSLB_DOMAIN: GSLB 도메인, GSLB_TTL: GSLB 도메인 갱신 주기, GSLB_ROUTING_RULE: 라우팅 규칙, GSLB_DISABLED: GSLB 비활성화 여부) |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"totalCount": 1,
"gslbList": [
{
"gslbId": "91de0c6f-aeaa-44ec-b361-822acfcd5921",
"gslbName": "GSLB-test",
"gslbDomain": "rgpac3e7q9onlipdfg.toastgslb.com",
"gslbTtl": 300,
"gslbRoutingRule": "GEOLOCATION",
"gslbDisabled": false,
"healthy": true,
"connectedPoolList": [
{
"poolId": "8e4326d4-3862-4b46-819e-83a786add570",
"connectedPoolOrder": 1,
"pool": {
// Pool 정보 생략
}
},
{
"poolId": "2f89d3fe-03bc-4711-826e-db2c89c12818",
"connectedPoolOrder": 2,
"connectedPoolRegionContent": "NORTHEAST_ASIA,SOUTHEAST_ASIA",
"pool": {
// Pool 정보 생략
}
}
],
"createdAt": "2019-12-18T20:44:02.000+09:00",
"updatedAt": "2019-12-18T21:01:05.000+09:00"
}
]
}
[필드]
이름 | 타입 | 설명 |
---|---|---|
totalCount | long | 전체 GSLB 개수 |
gslbList | List | Pool 목록 |
gslbList[0].gslbId | String | GSLB ID |
gslbList[0].gslbName | String | GSLB 이름 |
gslbList[0].gslbDomain | String | GSLB 도메인 |
gslbList[0].gslbTtl | String | GLSB 도메인 갱신 주기 |
gslbList[0].gslbRoutingRule | String | 라우팅 규칙 |
gslbList[0].gslbDisabled | boolean | GSLB 비활성화 여부 |
gslbList[0].healthy | boolean | GSLB 정상 여부 |
gslbList[0].connectedPoolList | List | 연결된 Pool 목록 |
gslbList[0].connectedPoolList[0].poolId | String | 연결된 Pool ID |
gslbList[0].connectedPoolList[0].pool | Object | 연결된 Pool 정보 |
gslbList[0].connectedPoolList[0].connectedPoolOrder | int | 연결된 Pool 우선순위 |
gslbList[0].connectedPoolList[0].connectedPoolRegionContent | String | 연결된 Pool의 지역을 한 줄로 표시한 내용 |
gslbList[0].createdAt | DateTime | 생성일 |
gslbList[0].updatedAt | DateTime | 수정일 |
[URI]
메서드 | URI |
---|---|
POST | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/gslbs |
[요청 본문]
curl -X POST 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/gslbs' \
-H 'Content-Type: application/json' \
--data '{ "gslb": { "gslbName": "GSLB-test", "gslbTtl": 300, "gslbRoutingRule": "FAILOVER", "connectedPoolList": [ { "poolId": "8e4326d4-3862-4b46-819e-83a786add570", "connectedPoolOrder": 1 }, { "poolId": "2f89d3fe-03bc-4711-826e-db2c89c12818", "connectedPoolOrder": 2 } ] }}'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
gslb | Object | 필수 | GSLB | ||
gslb.gslbName | String | 최대 100자, 영어 대소문자와 숫자, '-', '_' |
필수 | GSLB 이름 | |
gslb.gslbTtl | int | 필수 | false | GSLB 도메인 갱신 주기 | |
gslb.gslbRoutingRule | String | FAILOVER, RANDOM, GEOLOCATION | 필수 | 라우팅 규칙 | |
gslb.gslbDisabled | boolean | 선택 | false | GSLB 비활성화 여부 | |
gslb.connectedPoolList | List | 선택 | 연결된 Pool 목록 | ||
gslb.connectedPoolList[0].poolId | String | 필수 | 연결된 Pool ID | ||
gslb.connectedPoolList[0].connectedPoolOrder | int | 최소 1, 최대 2,147,483,647 | 필수 | 연결된 Pool 우선순위 | |
gslb.connectedPoolList[0].connectedPoolRegionContent | String | WESTERN_NORTH_AMERICA, EASTERN_NORTH_AMERICA, WESTERN_EUROPE, EASTERN_EUROPE, NORTHERN_SOUTH_AMERICA, SOUTHERN_SOUTH_AMERICA, OCEANIA, MIDDLE_EAST, NORTHERN_AFRICA, SOUTHERN_AFRICA, INDIA, SOUTHEAST_ASIA, NORTHEAST_ASIA |
선택 | 연결된 Pool 지역 설정 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"gslb": {
"gslbId": "91de0c6f-aeaa-44ec-b361-822acfcd5921",
"gslbName": "GSLB-test",
"gslbDomain": "rgpac3e7q9onlipdfg.toastgslb.com",
"gslbTtl": 300,
"gslbRoutingRule": "FAILOVER",
"gslbDisabled": false,
"connectedPoolList": [
{
"poolId": "8e4326d4-3862-4b46-819e-83a786add570",
"connectedPoolOrder": 1,
"pool": {
// Pool 정보 생략
}
},
{
"poolId": "2f89d3fe-03bc-4711-826e-db2c89c12818",
"connectedPoolOrder": 2,
"pool": {
// Pool 정보 생략
}
}
],
"createdAt": "2019-12-18T20:44:02.000+09:00",
"updatedAt": "2019-12-18T20:44:03.000+09:00"
}
}
[URI]
메서드 | URI |
---|---|
PUT | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/gslbs/{gslbId} |
[요청 본문]
curl -X PUT 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/gslbs/{gslbId}' \
-H 'Content-Type: application/json' \
--data '{ "gslb": { "gslbName": "GSLB-test", "gslbTtl": 300, "gslbDisabled": true, "gslbRoutingRule": "GEOLOCATION", "connectedPoolList": [ { "poolId": "8e4326d4-3862-4b46-819e-83a786add570", "connectedPoolOrder": 1 }, { "poolId": "2f89d3fe-03bc-4711-826e-db2c89c12818", "connectedPoolOrder": 2, "connectedPoolRegionContent": "NORTHEAST_ASIA,SOUTHEAST_ASIA" } ] }}'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
gslb | Object | 필수 | GSLB | ||
gslb.gslbName | String | 최대 100자, 영대소문자와 숫자, '-', '_' |
필수 | GSLB 이름 | |
gslb.gslbTtl | int | 필수 | false | GSLB 도메인 갱신 주기 | |
gslb.gslbRoutingRule | String | FAILOVER, RANDOM, GEOLOCATION | 필수 | 라우팅 규칙 | |
gslb.gslbDisabled | boolean | 선택 | false | GSLB 비활성화 여부 | |
gslb.connectedPoolList | List | 선택 | 연결된 Pool 목록 | ||
gslb.connectedPoolList[0].poolId | String | 필수 | 연결된 Pool ID | ||
gslb.connectedPoolList[0].connectedPoolOrder | int | 최소 1, 최대 2,147,483,647 | 필수 | 연결된 Pool 우선순위 | |
gslb.connectedPoolList[0].connectedPoolRegionContent | String | WESTERN_NORTH_AMERICA, EASTERN_NORTH_AMERICA, WESTERN_EUROPE, EASTERN_EUROPE, NORTHERN_SOUTH_AMERICA, SOUTHERN_SOUTH_AMERICA, OCEANIA, MIDDLE_EAST, NORTHERN_AFRICA, SOUTHERN_AFRICA, INDIA, SOUTHEAST_ASIA, NORTHEAST_ASIA |
선택 | 연결된 Pool 지역 설정 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"gslb": {
"gslbId": "91de0c6f-aeaa-44ec-b361-822acfcd5921",
"gslbName": "GSLB-test",
"gslbDomain": "rgpac3e7q9onlipdfg.toastgslb.com",
"gslbTtl": 300,
"gslbRoutingRule": "GEOLOCATION",
"gslbDisabled": true,
"connectedPoolList": [
{
"poolId": "8e4326d4-3862-4b46-819e-83a786add570",
"connectedPoolOrder": 1,
"pool": {
// Pool 정보 생략
}
},
{
"poolId": "2f89d3fe-03bc-4711-826e-db2c89c12818",
"connectedPoolOrder": 2,
"connectedPoolRegionContent": "NORTHEAST_ASIA,SOUTHEAST_ASIA",
"pool": {
// Pool 정보 생략
}
}
],
"createdAt": "2019-12-18T20:44:02.000+09:00",
"updatedAt": "2019-12-18T20:59:49.000+09:00"
}
}
[URI]
메서드 | URI |
---|---|
DELETE | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/gslbs |
[요청 본문]
curl -X DELETE 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/gslbs?
gslbIdList=91de0c6f-aeaa-44ec-b361-822acfcd5921,269eff10-f3c0-4b11-b072-ec53e7c604bf'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
gslbIdList | List | 최소 1개, 최대 3,000개 | 필수 | GSLB ID 목록 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
}
}
[URI]
메서드 | URI |
---|---|
POST | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/gslbs/{gslbId}/connected-pools/{poolId} |
[요청 본문]
curl -X POST 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/gslbs/{gslbId}/connected-pools/{poolId}' \
-H 'Content-Type: application/json' \
--data '{ "connectedPool": { "connectedPoolOrder": 1 } }'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
connectedPool | Object | 필수 | 연결된 Pool | ||
connectedPool.connectedPoolOrder | int | 최소 1, 최대 2,147,483,647 | 필수 | 연결된 Pool 우선순위 | |
connectedPool.connectedPoolRegionContent | String | WESTERN_NORTH_AMERICA, EASTERN_NORTH_AMERICA, WESTERN_EUROPE, EASTERN_EUROPE, NORTHERN_SOUTH_AMERICA, SOUTHERN_SOUTH_AMERICA, OCEANIA, MIDDLE_EAST, NORTHERN_AFRICA, SOUTHERN_AFRICA, INDIA, SOUTHEAST_ASIA, NORTHEAST_ASIA |
선택 | 연결된 Pool 지역 설정 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"connectedPoolList": [
{
"poolId": "52da0e48-9062-43f7-bef8-8aec4b795bfe",
"connectedPoolOrder": 1,
"pool": {
// Pool 정보 생략
}
},
{
"poolId": "8e4326d4-3862-4b46-819e-83a786add570",
"connectedPoolOrder": 2,
"pool": {
// Pool 정보 생략
}
},
{
"poolId": "2f89d3fe-03bc-4711-826e-db2c89c12818",
"connectedPoolOrder": 3,
"connectedPoolRegionContent": "NORTHEAST_ASIA,SOUTHEAST_ASIA",
"pool": {
// Pool 정보 생략
}
}
]
}
[URI]
메서드 | URI |
---|---|
PUT | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/gslbs/{gslbId}/connected-pools/{poolId} |
[요청 본문]
curl -X PUT 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/gslbs/{gslbId}/connected-pools/{poolId}' \
-H 'Content-Type: application/json' \
--data '{ "connectedPool": { "connectedPoolOrder": 1, "connectedPoolRegionContent": "WESTERN_NORTH_AMERICA" } }'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
connectedPool | Object | 필수 | 연결된 Pool | ||
connectedPool.connectedPoolOrder | int | 최소 1, 최대 2,147,483,647 | 필수 | 연결된 Pool 우선순위 | |
connectedPool.connectedPoolRegionContent | String | WESTERN_NORTH_AMERICA, EASTERN_NORTH_AMERICA, WESTERN_EUROPE, EASTERN_EUROPE, NORTHERN_SOUTH_AMERICA, SOUTHERN_SOUTH_AMERICA, OCEANIA, MIDDLE_EAST, NORTHERN_AFRICA, SOUTHERN_AFRICA, INDIA, SOUTHEAST_ASIA, NORTHEAST_ASIA |
선택 | 연결된 Pool 지역 설정 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"connectedPoolList": [
{
"poolId": "52da0e48-9062-43f7-bef8-8aec4b795bfe",
"connectedPoolOrder": 1,
"connectedPoolRegionContent": "WESTERN_NORTH_AMERICA",
"pool": {
// Pool 정보 생략
}
},
{
"poolId": "8e4326d4-3862-4b46-819e-83a786add570",
"connectedPoolOrder": 2,
"pool": {
// Pool 정보 생략
}
},
{
"poolId": "2f89d3fe-03bc-4711-826e-db2c89c12818",
"connectedPoolOrder": 3,
"connectedPoolRegionContent": "NORTHEAST_ASIA,SOUTHEAST_ASIA",
"pool": {
// Pool 정보 생략
}
}
]
}
[URI]
메서드 | URI |
---|---|
DELETE | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/gslbs/{gslbId}/connected-pools |
[요청 본문]
curl -X DELETE 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/gslbs/{gslbId}/connected-pools?
poolIdList=52da0e48-9062-43f7-bef8-8aec4b795bfe,12bc396a-eb97-4a6b-ab4c-73d1a1dfb093'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
poolIdList | List | 최소 1개, 최대 3,000개 | 필수 | Pool ID 목록 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"connectedPoolList": [
{
"poolId": "8e4326d4-3862-4b46-819e-83a786add570",
"connectedPoolOrder": 2,
"pool": {
// Pool 정보 생략
}
},
{
"poolId": "2f89d3fe-03bc-4711-826e-db2c89c12818",
"connectedPoolOrder": 3,
"connectedPoolRegionContent": "NORTHEAST_ASIA,SOUTHEAST_ASIA",
"pool": {
// Pool 정보 생략
}
}
]
}
[URI]
메서드 | URI |
---|---|
GET | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/pools |
[요청 본문]
curl -X GET 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/pools?showHealthy=true'
[옵션]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
poolIdList | List | 최대 3,000개 | 선택 | Pool ID 목록 | |
searchPoolName | String | 선택 | 검색할 Pool 이름 | ||
healthCheckId | String | 선택 | 연결 된 헬스 체크 ID | ||
showHealthy | boolean | 선택 | 헬스 체크 결과 보기 여부 | ||
page | int | 최소 1 | 선택 | 1 | 페이지 번호 |
limit | int | 최소 1, 최대 3,000 | 선택 | 50 | 조회 개수 |
sortDirection | String | DESC, ASC | 선택 | DESC | 정렬 방향(DESC: 내림차순, ASC: 오름차순) |
sortKey | String | CREATED_AT, UPDATED_AT, POOL_NAME, POOL_DISABLED, HEALTH_CHECK_ID |
선택 | CREATED_AT | 정렬 대상 (CREATED_AT: 생성일, UPDATED_AT: 수정일, POOL_NAME: Pool 이름, POOL_DISABLED: Pool 비활성화 여부, HEALTH_CHECK_ID: 연결된 헬스 체크 ID) |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"totalCount": 1,
"poolList": [
{
"poolId": "8e4326d4-3862-4b46-819e-83a786add570",
"poolName": "POOL-test",
"poolDisabled": false,
"healthy": true,
"healthCheckId": "b9165853-7859-4309-8059-48f12ebdbc17",
"healthCheck": {
// 헬스 체크 정보 생략
},
"endpointList": [
{
"endpointAddress": "test.dnsplus.com",
"endpointWeight": 1.0,
"endpointDisabled": false,
"healthy": true,
"failureReason": "No failures"
},
{
"endpointAddress": "123.123.123.123",
"endpointWeight": 1.0,
"endpointDisabled": false,
"healthy": false,
"failureReason": "HTTP timeout occurred"
},
{
"endpointAddress": "test2.dnsplus.com",
"endpointWeight": 1.0,
"endpointDisabled": true
}
],
"createdAt": "2019-12-18T18:36:02.000+09:00",
"updatedAt": "2019-12-18T18:43:31.000+09:00"
}
]
}
[필드]
이름 | 타입 | 설명 |
---|---|---|
totalCount | long | 전체 Pool 개수 |
poolList | List | Pool 목록 |
poolList[0].poolId | String | Pool ID |
poolList[0].poolName | String | Pool 이름 |
poolList[0].poolDisabled | boolean | Pool 비활성화 여부 |
poolList[0].healthy | boolean | Pool 정상 여부 |
poolList[0].healthCheckId | String | 연결된 헬스 체크 ID |
poolList[0].healthCheck | Object | 연결된 헬스 체크 정보 |
poolList[0].endpointList | List | 엔드포인트 목록 |
poolList[0].endpointList[0].endpointAddress | String | 엔드포인트 주소 |
poolList[0].endpointList[0].endpointWeight | double | 엔드포인트 가중치 |
poolList[0].endpointList[0].healthy | boolean | 엔드포인트 정상 여부 |
poolList[0].endpointList[0].failureReason | String | 엔드포인트 비정상 이유 |
poolList[0].createdAt | DateTime | 생성일 |
poolList[0].updatedAt | DateTime | 수정일 |
[URI]
메서드 | URI |
---|---|
POST | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/pools |
[요청 본문]
curl -X POST 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/pools' \
-H 'Content-Type: application/json' \
--data '{ "pool": { "poolName": "POOL-test", "endpointList": [ { "endpointAddress": "test.dnsplus.com" }, { "endpointAddress": "123.123.123.123" } ] }}'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
pool | Object | 필수 | Pool | ||
pool.poolName | String | 최대 100자, 영대소문자와 숫자, '-', '_' |
필수 | Pool 이름 | |
pool.poolDisabled | boolean | 선택 | false | Pool 비활성화 여부 | |
pool.healthCheckId | String | 선택 | 헬스 체크 ID | ||
pool.endpointList | List | 필수 | 엔드포인트 목록 | ||
pool.endpointList[0].endpointAddress | String | 최대 254자, 소문자와 숫자, '.', '-', '_' |
필수 | 엔드포인트 주소 | |
pool.endpointList[0].endpointWeight | double | 최소 0, 최대 1.00 | 선택 | 1.00 | 엔드포인트 가중치 |
pool.endpointList[0].endpointDisabled | boolean | 선택 | false | 엔드포인트 비활성화 여부 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"pool": {
"poolId": "8e4326d4-3862-4b46-819e-83a786add570",
"poolName": "POOL-test",
"poolDisabled": false,
"healthCheckId": "",
"endpointList": [
{
"endpointAddress": "test.dnsplus.com",
"endpointWeight": 1.0,
"endpointDisabled": false
},
{
"endpointAddress": "123.123.123.123",
"endpointWeight": 1.0,
"endpointDisabled": false
}
],
"createdAt": "2019-12-18T18:36:02.000+09:00",
"updatedAt": "2019-12-18T18:36:02.000+09:00"
}
}
[URI]
메서드 | URI |
---|---|
PUT | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/pools/{poolId} |
[요청 본문]
curl -X PUT 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/pools/{poolId}' \
-H 'Content-Type: application/json' \
--data '{ "pool": { "poolName": "POOL-test", "poolDisabled": true, "healthCheckId": "b9165853-7859-4309-8059-48f12ebdbc17", "endpointList": [ { "endpointAddress": "test.dnsplus.com", "endpointWeight": 1.00, "endpointDisabled": true }, { "endpointAddress": "123.123.123.123", "endpointWeight": 0.5, "endpointDisabled": true } ] }}'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
pool | Object | 필수 | Pool | ||
pool.poolName | String | 최대 100자, 영대소문자와 숫자, '-', '_' |
필수 | Pool 이름 | |
pool.poolDisabled | boolean | 선택 | false | Pool 비활성화 여부 | |
pool.healthCheckId | String | 선택 | 헬스 체크 ID | ||
pool.endpointList | List | 필수 | 엔드포인트 목록 | ||
pool.endpointList[0].endpointAddress | String | 최대 254자, 소문자와 숫자, '.', '-', '_' |
필수 | 엔드포인트 주소 | |
pool.endpointList[0].endpointWeight | double | 최소 0, 최대 1.00 | 선택 | 1.00 | 엔드포인트 가중치 |
pool.endpointList[0].endpointDisabled | boolean | 선택 | false | 엔드포인트 비활성화 여부 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"pool": {
"poolId": "8e4326d4-3862-4b46-819e-83a786add570",
"poolName": "POOL-test",
"poolDisabled": true,
"healthCheckId": "b9165853-7859-4309-8059-48f12ebdbc17",
"healthCheck": {
// 헬스 체크 정보 생략
},
"endpointList": [
{
"endpointAddress": "test.dnsplus.com",
"endpointWeight": 1.0,
"endpointDisabled": true
},
{
"endpointAddress": "123.123.123.123",
"endpointWeight": 0.5,
"endpointDisabled": true
}
],
"createdAt": "2019-12-18T18:36:02.000+09:00",
"updatedAt": "2019-12-18T18:37:45.000+09:00"
}
}
[URI]
메서드 | URI |
---|---|
DELETE | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/pools |
[요청 본문]
curl -X DELETE 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/pools?
poolIdList=8e4326d4-3862-4b46-819e-83a786add570,2f89d3fe-03bc-4711-826e-db2c89c12818'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
poolIdList | List | 최소 1개, 최대 3,000개 | 필수 | Pool ID 목록 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
}
}
[URI]
메서드 | URI |
---|---|
GET | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/health-checks |
[요청 본문]
curl -X GET 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/health-checks'
[옵션]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
healthCheckIdList | List | 최대 3,000개 | 선택 | 헬스 체크 ID 목록 | |
searchHealthCheckName | String | 선택 | 검색할 헬스 체크 이름 | ||
page | int | 최소 1 | 선택 | 1 | 페이지 번호 |
limit | int | 최소 1, 최대 3,000 | 선택 | 50 | 조회 개수 |
sortDirection | String | DESC, ASC | 선택 | DESC | 정렬 방향(DESC: 내림차순, ASC: 오름차순) |
sortKey | String | CREATED_AT, UPDATED_AT, HEALTH_CHECK_NAME, PROTOCOL, PORT |
선택 | CREATED_AT | 정렬 대상 (CREATED_AT: 생성일, UPDATED_AT: 수정일, HEALTH_CHECK_NAME: 헬스 체크 이름, PROTOCOL: 프로토콜, PORT: 포트) |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"totalCount": 1,
"healthCheckList": [
{
"healthCheckId": "b9165853-7859-4309-8059-48f12ebdbc17",
"healthCheckName": "HTTPS-443",
"protocol": "HTTPS",
"port": 443,
"interval": 60,
"timeout": 5,
"retries": 2,
"path": "/",
"expectedCodes": "2xx",
"expectedBody": "OK",
"allowInsecure": false,
"requestHeaderList": [
{ "Host": "gov-nhncloud.com" }
],
"createdAt": "2019-12-18T12:31:34.000+09:00",
"updatedAt": "2019-12-18T14:19:20.000+09:00"
}
]
}
[필드]
이름 | 타입 | 설명 |
---|---|---|
totalCount | long | 전체 헬스 체크 개수 |
healthCheckList | List | 헬스 체크 목록 |
healthCheckList[0].healthCheckId | String | 헬스 체크 ID |
healthCheckList[0].healthCheckName | String | 헬스 체크 이름 |
healthCheckList[0].protocol | String | 프로토콜 |
healthCheckList[0].port | int | 포트 |
healthCheckList[0].interval | int | 헬스 체크 주기 |
healthCheckList[0].timeout | int | 최대 응답 대기 시간 |
healthCheckList[0].retries | int | 최대 재시도 횟수 |
healthCheckList[0].path | String | 경로 |
healthCheckList[0].expectedCodes | String | 예상 상태 코드 |
healthCheckList[0].expectedBody | String | 예상 응답 본문 |
healthCheckList[0].allowInsecure | boolean | 인증서 검증 안 함 |
healthCheckList[0].requestHeaderList | List | 요청 헤더 목록 |
healthCheckList[0].requestHeaderList[0] | Object | 요청 헤더 이름, 값 객체 |
healthCheckList[0].createdAt | DateTime | 생성일 |
healthCheckList[0].updatedAt | DateTime | 수정일 |
[URI]
메서드 | URI |
---|---|
POST | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/health-checks |
[요청 본문]
curl -X POST 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/health-checks' \
-H 'Content-Type: application/json' \
--data '{ "healthCheck": { "healthCheckName": "HTTPS-443", "protocol": "HTTPS", "port": 443, "interval": 60, "timeout": 5, "retries": 2, "path": "/", "expectedCodes": "2xx", "allowInsecure": false, "requestHeaderList": [{ "Host": "gov-nhncloud.com" }] }}'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
healthCheck | Object | 필수 | 헬스 체크 | ||
healthCheck.healthCheckName | String | 최대 100자, 영대소문자와 숫자, '-', '_' |
필수 | 헬스 체크 이름 | |
healthCheck.protocol | String | HTTPS, HTTP, TCP | 필수 | 헬스 체크 수행 프로토콜 | |
healthCheck.port | int | 최소 1, 최대 65535 | 필수 | 헬스 체크 수행 포트 | |
healthCheck.interval | int | 최소 10 또는 (retries+1)*timeout, 최대 3600 | 선택 | 60 | 헬스 체크 주기 |
healthCheck.timeout | int | 최소 1, 최대 10 | 선택 | 5 | 최대 응답 대기 시간 |
healthCheck.retries | int | 최소 0, 최대 5 | 선택 | 2 | 최대 재시도 횟수 |
healthCheck.path | String | 최대 254자, 시작 문자 '/' |
선택 | 헬스 체크 수행 경로, HTTPS, HTTP일 때 사용 |
|
healthCheck.expectedCodes | String | 숫자와 와일드카드 'x' | 선택 | 헬스 체크 예상 상태 코드, HTTPS, HTTP일 때 사용 (예제) 2xx, 20x, 200 |
|
healthCheck.expectedBody | String | 최대 10KB | 선택 | 헬스 체크 예상 응답 본문, HTTPS, HTTP일 때 사용 |
|
healthCheck.allowInsecure | boolean | 선택 | 헬스 체크 인증서 검증 안 함, HTTPS 일 때 사용 |
||
healthCheck.requestHeaderList | List | 선택 | 요청 헤더 목록, HTTPS, HTTP일 때 사용, 목록 내 항목은 { "헤더이름": "헤더 값" } 형태로 요청 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"healthCheck": {
"healthCheckId": "b9165853-7859-4309-8059-48f12ebdbc17",
"healthCheckName": "HTTPS-443",
"protocol": "HTTPS",
"port": 443,
"interval": 60,
"timeout": 5,
"retries": 2,
"path": "/",
"expectedCodes": "2xx",
"allowInsecure": false,
"requestHeaderList": [
{ "Host": "gov-nhncloud.com" }
],
"createdAt": "2019-12-18T12:31:34.000+09:00",
"updatedAt": "2019-12-18T12:31:34.000+09:00"
}
}
[URI]
메서드 | URI |
---|---|
PUT | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/health-checks/{healthCheckId} |
[요청 본문]
curl -X PUT 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/health-checks/{healthCheckId}' \
-H 'Content-Type: application/json' \
--data '{ "healthCheck": { "healthCheckName": "HTTPS-443", "protocol": "HTTPS", "port": 443, "interval": 60, "timeout": 5, "retries": 2, "path": "/", "expectedCodes": "3xx", "allowInsecure": false }}'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
healthCheck | Object | 필수 | 헬스 체크 | ||
healthCheck.healthCheckName | String | 최대 100자, 영대소문자와 숫자, '-', '_' |
필수 | 헬스 체크 이름 | |
healthCheck.protocol | String | HTTPS, HTTP, TCP | 필수 | 헬스 체크 수행 프로토콜 | |
healthCheck.port | int | 최소 1, 최대 65535 | 필수 | 헬스 체크 수행 포트 | |
healthCheck.interval | int | 최소 10 또는 (retries+1)*timeout, 최대 3600 | 선택 | 헬스 체크 주기 | |
healthCheck.timeout | int | 최소 1, 최대 10 | 선택 | 최대 응답 대기 시간 | |
healthCheck.retries | int | 최소 0, 최대 5 | 선택 | 최대 재시도 횟수 | |
healthCheck.path | String | 최대 254자, 시작 문자 '/' |
선택 | 헬스 체크 수행 경로, HTTPS, HTTP일 때 사용 |
|
healthCheck.expectedCodes | String | 숫자와 와일드카드 'x' | 선택 | 헬스 체크 예상 상태 코드, HTTPS, HTTP일 때 사용 (예제) 2xx, 20x, 200 |
|
healthCheck.expectedBody | String | 최대 10KB | 선택 | 헬스 체크 예상 응답 본문, HTTPS, HTTP일 때 사용 |
|
healthCheck.allowInsecure | boolean | 선택 | 헬스 체크 인증서 검증 안 함, HTTPS 일 때 사용 |
||
healthCheck.requestHeaderList | List | 선택 | 요청 헤더 목록, HTTPS, HTTP일 때 사용, 목록 내 항목은 { "헤더이름": "헤더 값" } 형태로 요청 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
},
"healthCheck": {
"healthCheckId": "b9165853-7859-4309-8059-48f12ebdbc17",
"healthCheckName": "HTTPS-443",
"protocol": "HTTPS",
"port": 443,
"interval": 60,
"timeout": 5,
"retries": 2,
"path": "/",
"expectedCodes": "3xx",
"allowInsecure": false,
"requestHeaderList": [
{ "Host": "gov-nhncloud.com" }
],
"createdAt": "2019-12-18T12:31:34.000+09:00",
"updatedAt": "2019-12-18T12:36:20.000+09:00"
}
}
[URI]
메서드 | URI |
---|---|
DELETE | https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/health-checks |
[요청 본문]
curl -X DELETE 'https://dnsplus.api.gov-nhncloudservice.com/dnsplus/v1.0/appkeys/{appkey}/health-checks?
healthCheckIdList=b9165853-7859-4309-8059-48f12ebdbc17,d2629d6b-9381-4645-9cf3-43d7ad491e2b'
[필드]
이름 | 타입 | 유효 범위 | 필수 여부 | 기본값 | 설명 |
---|---|---|---|---|---|
healthCheckIdList | List | 최소 1개, 최대 3,000개 | 필수 | 헬스 체크 ID 목록 |
[응답 본문]
{
"header": {
"isSuccessful": true,
"resultCode": 0,
"resultMessage": "SUCCESS"
}
}