1.1 OpenAPI 서비스개요

1.1.1 제공목적

• 이 문서는 KT Cloud API사용 가이드 입니다.
OpenAPI는 REST 형태로 제공되며, CloudStack Version 3.0.4과 호환성을 지원합니다.
제공하는 openAPI를 활용하여 클라우드 컴퓨팅 자원을 생성 및 관리 할 수 있습니다.

1.1.2 제약사항

• 모든 요청과 응답은 HTTPS 기반으로 이루어집니다. HTTP 1.1 지원합니다ASCII Character Set만을 지원합니다.
API URL 만료기간 설정을 통해 공격 방지가 가능합니다. (1.2 OpenAPI 이용방법)
서비스별 $(API_URL) endpoint는 서비스별 하단에서 별도 확인해 주시기 바랍니다.
그룹계정은 각각 계정에서 OpenAPI를 사용하셔야 합니다.
OpenAPI는 Ratelimit으로 1초에 1건으로 호출을 권고 드립니다.
QueryAsyncJobResult 결과는 3일 이전까지의 Jobid를 반환합니다.
json과 xml 은 포맷의 차이만 있을 뿐 내용은 동일합니다.
삭제명령은 생성명령이 완료된 이후에 동작합니다.
대소문자 구분이 되지 않을 시 오류가 발생합니다(listAvailableProductTypes)
중복삭제요청은 오류가 발생합니다.
Signature Key를 잘못 생성하시면 오류가 발생합니다.
API EndPoint 및 version을 잘못 되게 요청하시면 오류가 발생합니다.
VPC, Ent.Cloud/Security 에서 사용이 가능합니다.
API Key와 Secret Key는 모든 Zone에서 공통으로 사용합니다.
API Key와 Secret Key 확인 메뉴는 하기와 같습니다.
KT Cloud 로그인 > 클라우드 콘솔 > KT Cloud server 메뉴 > API Key 메뉴

명령어 수행 유형 VM / DISK Volume 생성과 같이 소요시간이 긴 명령은 비동기 명령어로 수행하고, 이외의 명령은 동기 명령어로 수행합니다. 비동기 명령어에 (A)를 표시하여 구분하고 있습니다.
CloudStack 상 존재하지 않는 명령어 및 명령어 파라미터 설명 부분에는 (*)를 표시하여 구분하고 있습니다.

대소문자 사용규칙 요청 명령어 및 파라미터에 대한 대소문자 사용 규칙은 다음과 같습니다.
항목 대소문자 구별 여부
Field
Command X
value X
API URL은 Seoul M2존의 경우에만 일반 Zone과는 다른 별도의 값을 API URL 서비스별 상세 내역은 하기 표를 확인하시기 바랍니다.
서비스 API URL
server 일반 Zone: https://api.ucloudbiz.olleh.com/server/v1/client/api?
Seoul M2 Zone: https://api.ucloudbiz.olleh.com/server/v2/client/api?
loadbalancer 일반 Zone: https://api.ucloudbiz.olleh.com/loadbalancer/v1/client/api?
Seoul M2 Zone: https://api.ucloudbiz.olleh.com/loadbalancer/v2/client/api?
NAS 일반 Zone: https://api.ucloudbiz.olleh.com/nas/v1/client/api?
Seoul M2 Zone: https://api.ucloudbiz.olleh.com/nas/v2/client/api?
CDN 일반 Zone: https://api.ucloudbiz.olleh.com/cdn/v1/client/api?
Seoul M2 Zone: https://api.ucloudbiz.olleh.com/cdn/v2/client/api?
autoscaling 일반 Zone: https://api.ucloudbiz.olleh.com/autoscaling/v1/client/api?
Seoul M2 Zone: https://api.ucloudbiz.olleh.com/autoscaling/v2/client/api?
WAF 일반 Zone: https://api.ucloudbiz.olleh.com/waf/v1/client/api?
Seoul M2 Zone: https://api.ucloudbiz.olleh.com/waf/v2/client/api?
DB 일반 Zone: https://api.ucloudbiz.olleh.com/db/v1/client/api?
Seoul M2 Zone: https://api.ucloudbiz.olleh.com/db/v2/client/api?
Messaging 일반 Zone: https://api.ucloudbiz.olleh.com/messaging/v1/client/api?
Seoul M2 Zone: https://api.ucloudbiz.olleh.com/messaging/v2/client/api?
Packaging 일반 Zone: https://api.ucloudbiz.olleh.com/packaging/v1/client/api?
Seoul M2 Zone: https://api.ucloudbiz.olleh.com/packaging/v2/client/api?
watch 일반 Zone: https://api.ucloudbiz.olleh.com/watch/v1/client/api?
Seoul M2 Zone: https://api.ucloudbiz.olleh.com/watch/v2/client/api?
GSLB 일반 Zone: https://api.ucloudbiz.olleh.com/gslb/v1/client/api?
Seoul M2 Zone: https://api.ucloudbiz.olleh.com/gslb/v2/client/api?

1.1.3 OpenAPI 서비스구성

• 각 서비스별 API에 대한 설명, 문법, 사용 샘플을 제공하며, 데이터 타입을 정의합니다.
• KT Cloud OpenAP에서 제공하는 서비스는 아래와 같습니다.

ㅁ Server
• KT Cloud Server는 가상의 CPU, 메모리, 기본 디스크로 구성된 가상화된 Server로, 구축된 서버에 어플리케이션을 올려 서비스를 제공합니다. 
• Server API는 디스크, 방화벽, 포트포워딩, 스냅샷, 이미지, 네트워크 등의 부가서비스 API들을 제공합니다. 
ㅁ 데이터베이스
• KT Cloud DB서비스 사용을 위한 API모음로 DB 서버생성, 조회, 변경, 삭제 등을 위한 API들을  제공합니다.
ㅁ 스토리지
• KT Cloud storage 사용을 위한 API모음으로 스토리지 계정관리, 파일박스 생성, 업로드, 다운로드 등의 API들을 제공합니다
ㅁ 스토리지 2.0
• KT Cloud storage 2.0 사용을 위한 API모음으로 스토리지 계정관리, 파일박스 생성, 업로드, 다운로드 등의 API들을 제공합니다
ㅁ autoscaling
• KT Cloud autoscaling 사용을 위한 API모음으로 autoscaling 그룹관리, 서버생성, 정책설정, 모니터링등의 API들을 제공합니다.
ㅁ CDN
• KT Cloud CDN 사용을 위한 API모음으로 CDN생성, Purge, snapshot 관리를 위한 API들을 제공합니다.
ㅁ GSLB
• KT Cloud GSLB사용을 위한 API모음으로 GSLB 서버 생성, 서비스 관리를 위한 API들을 제공합니다.
ㅁ Watch
• KT Cloud Watch사용을 위한 API모음으로 메트릭관리, 알람관리를 위한 API들을 제공합니다.
ㅁ Packaging
• KT Cloud Packaging사용을 위한 API모음으로 package생성, 템플릿관리를 위한 API들을 제공합니다.
ㅁ Messaging
• KT Cloud Messaging사용을 위한 API모음으로 메시지 구독, 발행, 정책관리를 위한 API들을 제공합니다.
ㅁ Loadbalancer
• KT Cloud Loadbalancer 사용을 위한 API모음으로 LB생성, 웹서버, 트래픽, 인증서관리를 위한 API들을 제공합니다.
ㅁ 웹방화벽
• WAF 사용을 위한 API모음으로 WAF서버, 웹서버, 웹사이트 관리를 위한 API들을 제공합니다.
ㅁ NAS
• KT Cloud NAS사용을 위한 API모음으로 NAS볼륨, 스냅샷, 네트워크 관리를 위한 API들을 제공합니다.