deleteDomain

Prev Next

이 가이드는 API 명세를 기반으로 자동 생성했습니다.

Classic/VPC 환경에서 이용 가능합니다.

Ncloud API 표준 규격을 적용한 API입니다.

도메인을 삭제합니다. 하위 레코드를 연쇄 삭제하지 않으므로, 도메인 생성 시 시스템이 만든 기본 레코드 (SOA, NS, DS) 외에 레코드가 하나라도 남아 있으면 409 오류로 삭제를 거부합니다. 레코드를 모두 삭제하고 적용한 뒤에 도메인을 삭제하세요. 기본 레코드는 도메인 삭제 시 시스템이 함께 정리합니다. 삭제는 생성·수정과 마찬가지로 비동기로 완료되므로 요청이 접수되면 작업(Operation) 자원을 202 Accepted 로 반환합니다. 완료 여부는 응답의 id 로 GET /domains/operations/{operationId} 를 폴링해 done 으로 확인합니다. done 이 true 가 되는 시점은 도메인이 네임서버에서까지 내려간 것을 확인한 시점입니다. 삭제 작업은 반환할 결과 자원이 없으므로 완료 시에도 results 는 내려가지 않습니다. 접수 후에는 기본 레코드를 포함한 하위 레코드가 먼저 제거되고, 네임서버 반영이 확인된 뒤에 도메인이 최종 삭제됩니다. 그 사이 GET /domains/{domainNo} 는 status 가 PROCESSING 이고 recordCount 가 0 이며 soa 하위 필드가 모두 null 인 자원을 200 으로 반환하고, 삭제가 완료되면 403 Forbidden 으로 바뀝니다. 완료 판정에는 이 403 대신 작업의 done 을 사용하세요. 403 은 권한 없음·미존재와 구분되지 않습니다.

요청

요청 형식을 설명합니다. 요청 형식은 다음과 같습니다.

메서드 URI
DELETE /domains/{domainNo}

요청 헤더

Global DNS API에서 공통으로 사용하는 헤더에 대한 정보는 Global DNS 요청 헤더를 참조해 주십시오.

요청 경로 파라미터

요청 경로 파라미터에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
domainNo Integer (int64) Required 도메인 번호
  • 보유하지 않았거나 존재하지 않는 번호는 403 Forbidden (두 경우를 구분하지 않음)
  • <예시> 120

요청 예시

요청 예시는 다음과 같습니다.

curl --location --request DELETE 'https://globaldns.apigw.gov-ntruss.com/dns/v2/domains/120' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}'

응답

응답 형식을 설명합니다.

응답 헤더

응답 헤더에 대한 설명은 다음과 같습니다.

필드 필수 여부 설명
Retry-After Optional 권장 폴링 대기 시간(초)
  • 아직 진행 중인 작업·자원에만 포함 (202 응답)

응답 바디

응답 바디에 대한 설명은 다음과 같습니다.

필드 타입 필수 여부 설명
id String (uuid) - 작업 ID
  • <예시> 3fa85f64-5717-4562-b3fc-2c963f66afa6
done Boolean - 작업 완료 여부
  • 저장소 반영 시점이 아니라 네임서버에 실제로 반영된 것까지 확인된 시점에 true
  • true 이면 변경이 DNS 질의에 반영된 상태
  • true | false
  • <예시> false
metadata Object<OperationMetadata> - 작업 메타데이터
error Object<Error> | Null - 실패 사유 (완료 및 실패 시에만 존재)
  • 실패는 변경분을 검증해 반영하는 구간(APPLYING)에서만 발생
  • 네임서버 동기화 구간(SYNCHRONIZING)에 들어선 작업은 이미 반영된 변경을 되돌리지 않으므로 실패로 끝나지 않으며, 동기화가 지연되면 완료될 때까지 진행 중으로 남음
results Map<DomainDetailed> - 작업 결과 자원 맵 (요청 인덱스를 문자열 키로 사용)
  • 단건 작업이므로 "0" 하나만 포함
  • 생성·수정 작업이 완료된 경우에만 포함되며, 진행 중이거나 삭제 작업이면 포함되지 않음

Error

에러 정보

필드 타입 필수 여부 설명
errorCode String - 에러 코드
message String - 에러 메시지 (기본 영어, 다국어 지원 가능)
detail String - 에러 상세 정보 (기본 영어, 다국어 지원 가능)
fieldErrors List<FieldError> - 입력값 에러가 발생한 경우 각 필드별 에러 상세 정보 목록

DomainDetailed

도메인 상세

필드 타입 필수 여부 설명
domainNo Integer (int64) - 도메인 번호
  • <예시> 1
name String - 도메인 이름
  • <예시> example.com
applied Boolean - 도메인 처리 완료 여부 (status 에서 파생)
  • true | false
    • true: 처리 완료 (status 가 SUCCEEDED)
    • false: 처리 중 (status 가 PROCESSING)
  • <예시> true
dnssecEnabled Boolean - DNSSEC 적용 여부
  • true | false
  • <예시> true
status String - 도메인 처리 상태
  • 실패 상태 값은 없으며, 완료 판정에는 작업 자원의 done 사용
  • PROCESSING | SUCCEEDED
    • PROCESSING: 생성·수정·삭제 처리 중. 네임서버 동기화가 확인될 때까지 유지
    • SUCCEEDED: 처리 완료. 작업(Operation)의 done 이 true 가 되는 시점과 같음
  • <예시> SUCCEEDED
description String | null - 도메인 설명
  • <예시> my domain
createdTimestamp Integer (int64) - 생성 시각 (Unix epoch 밀리초)
  • <예시> 1568111263000
updatedTimestamp Integer (int64) - 수정 시각 (Unix epoch 밀리초)
  • <예시> 1568111263000
recordCount Integer (int64) - 이 도메인(domainNo)에 속한 레코드 수
  • <예시> 5
soa Object<SoaRecord> - SOA 레코드
  • 항상 객체이며 하위 필드만 null 가능
  • 하위 필드가 모두 null 인 경우: 도메인 설정 적용 전이거나 삭제 처리 중
  • 삭제가 완료된 도메인은 조회 시 403 Forbidden

SoaRecord

SOA 레코드. 사용자가 직접 설정하지 않으며, 도메인 설정 적용 시 시스템이 값을 채웁니다. 적용 전에는 domainName·nameServers·serial·refresh·retry·expire·ttl 이 null 이고, dnssecEnabled 는 항상 값이 있습니다(적용 전에는 false).

필드 타입 필수 여부 설명
domainName String | null - 도메인 이름
  • <예시> example.com
nameServers List<String> | null - 네임서버 목록
  • <예시> ["ns1-1.ns-ncloud.com.", "ns1-2.ns-ncloud.com."]
serial Integer (int64) | null - SOA serial 번호
  • <예시> 2019091001
refresh Integer (int64) | null - SOA refresh (초)
  • <예시> 3600
retry Integer (int64) | null - SOA retry (초)
  • <예시> 600
expire Integer (int64) | null - SOA expire (초)
  • <예시> 604800
ttl Integer (int64) | null - SOA 최소 TTL (초)
  • <예시> 300
dnssecEnabled Boolean - DNSSEC 적용 여부
  • true | false
  • <예시> true

응답 상태 코드

Global DNS API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 Global DNS 응답 상태 코드를 참조해 주십시오.

이 API에만 해당하는 응답 상태 코드는 다음과 같습니다.

HTTP 상태 코드 코드 메시지 설명
202 - - Accepted (삭제 접수). 응답 본문은 작업(Operation) 자원이며 done 은 false 입니다. GET /domains/operations/{operationId} 로 폴링해 done 이 true 가 되면 삭제가 완료된 것입니다. 삭제 작업은 결과 자원이 없어 완료 시에도 results 는 내려가지 않습니다. 폴링 간격은 Retry-After 헤더를 따릅니다.
409 ResourceInUse The specified resource is in use. 도메인에 시스템이 만든 기본 레코드(SOA·NS·DS) 외의 레코드가 남아 있어 삭제할 수 없는 경우. 레코드를 모두 삭제하고 적용한 뒤 다시 요청

응답 예시

응답 예시는 다음과 같습니다.

{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "done": false,
  "metadata": {
    "operationType": "UPDATE",
    "resourceType": "records",
    "startDateTime": "2026-06-30T12:00:00Z",
    "endDateTime": "2026-06-30T12:00:05Z",
    "phase": "SYNCHRONIZING"
  },
  "results": {
    "key": {
      "domainNo": 1,
      "name": "example.com",
      "applied": true,
      "dnssecEnabled": true,
      "status": "SUCCEEDED",
      "description": "my domain",
      "createdTimestamp": 1568111263000,
      "updatedTimestamp": 1568111263000,
      "recordCount": 5,
      "soa": {
        "domainName": "example.com",
        "nameServers": [
          "ns1-1.ns-ncloud.com.",
          "ns1-2.ns-ncloud.com."
        ],
        "serial": 2019091001,
        "refresh": 3600,
        "retry": 600,
        "expire": 604800,
        "ttl": 300,
        "dnssecEnabled": true
      }
    }
  }
}