소개

개요

HTTP 응답

코드 설명
200 Function successfully executed.
400 Invalid API location. Check the URL that you are using.
403 Invalid or missing API key. Check that your API key is present and matches your assigned key.
405 Invalid HTTP method. Check that the method (POST / GET)
412 Request failed. Check the response body for a more detailed description.
500 Internal server error. Try again at a later time.
503 Rate limit hit. API requests are limited to an average of 1/s. Try your request again later.

API 사용

인증

인증이 필요한 API 요청의 경우 'token : 발급토큰'을 Parameter로 보내야합니다. 이를 수행하는 방법에 대한 자세한 정보는 아래의 각 항목의 cURL 예제를 참조하십시오.

토큰 발급

POST /v1/auth

토큰의 유효기간은 생성일을 포함한 365일 입니다.

Header

  • 필수

Parameter

  • 필수
  • * apikey: 코리아SSL > 로그인 > 파트너 > 파트너연동 에서 발급 가능

Response

  • Name Type Description
    token String 인증이 필요한 요청에서 사용하는 토큰
  • Name Type Description
    code Integer HTTP 응답코드
    success Boolean 요청 성공 여부
    message String 요청 응답메시지

cURL 요청 예제

curl -X POST -H "Accept: application/json" -d 'apikey={발급키}' https://api.koreassl.com/v1/auth

응답 예제

{
	"data": {
		"token": "f837762e000095df34873b6165dwf2cf"
	},
	"status": {
		"code": 200,
		"success": true,
		"message": "success"
	}
}

제품

GET /v1/product/list

파트너 할인이 적용된 인증서 제품

Header

  • 필수

Parameter

  • 필수
  • * token 항목은 토큰 발급을 참조해주세요.

Response

  • Name Type Description
    products products[] 제품
  • Name Type Description
    product_id String 제품ID (제품 주문시 필요한 항목)
    product String 제품명
    product_cate String 제품종류 (single / multi / wildcard / multi-wildcard)
    validation_method String 검증 (DV / OV / EV)
    ca String 인증기관
    price1_yn String 1년 주문가능여부 (Y:가능 / N:불가능)
    price2_yn String 2년 주문가능여부 (Y:가능 / N:불가능)
    price3_yn String 3년 주문가능여부 (Y:가능 / N:불가능)
    price4_yn String 4년 주문가능여부 (Y:가능 / N:불가능)
    price5_yn String 5년 주문가능여부 (Y:가능 / N:불가능)
    price_1 Integer 1년 판매가 (원)
    price_2 Integer 2년 판매가 (원)
    price_3 Integer 3년 판매가 (원)
    price_4 Integer 4년 판매가 (원)
    price_5 Integer 5년 판매가 (원)
    san_price Integer 1개당 SAN 판매가 (원)
    def_san Integer 기본제공 SAN 개수
    san_limit Integer 최대수량 SAN 개수
    warranty Double 배상액 (달러)
    unlimited_servers Integer 무제한 서버 (0:무제한 / 1,2..~:제한)
  • Name Type Description
    code Integer HTTP 응답코드
    success Boolean 요청 성공 여부
    message String 요청 응답메시지

cURL 요청 예제

curl -X GET -H "Accept: application/json" https://api.koreassl.com/v1/product/list?token={토큰}

응답 예제

{
	"data": {
		"products": [
			  {
				"product_id": "45",
				"product": "PositiveSSL",
				"product_cate": "single",
				"validation_method": "DV",
				"ca": "Sectigo",
				"price1_yn": "Y",
				"price2_yn": "Y",
				"price3_yn": "Y",
				"price4_yn": "Y",
				"price5_yn": "N",
				"price_1": 7650,
				"price_2": 13600,
				"price_3": 20400,
				"price_4": 26350,
				"price_5": 0,
				"san_price": 0,
				"def_san": 0,
				"san_limit": 0,
				"warranty": 10000.0,
				"unlimited_servers": 0
			},
			  {
				"product_id": "46",
				"product": "PositiveSSL Wildcard",
				"product_cate": "wildcard",
				"validation_method": "DV",
				"ca": "Sectigo",
				"price1_yn": "Y",
				"price2_yn": "Y",
				"price3_yn": "Y",
				"price4_yn": "Y",
				"price5_yn": "N",
				"price_1": 106600,
				"price_2": 196800,
				"price_3": 246000,
				"price_4": 310780,
				"price_5": 0,
				"san_price": 0,
				"def_san": 0,
				"san_limit": 0,
				"warranty": 10000.0,
				"unlimited_servers": 0
			},
			  {
				"product_id": "26",
				"product": "QuickSSL Premium",
				"product_cate": "single",
				"validation_method": "DV",
				"ca": "GeoTrust",
				"price1_yn": "Y",
				"price2_yn": "Y",
				"price3_yn": "N",
				"price4_yn": "N",
				"price5_yn": "N",
				"price_1": 89100,
				"price_2": 152100,
				"price_3": 0,
				"price_4": 0,
				"price_5": 0,
				"san_price": 0,
				"def_san": 0,
				"san_limit": 0,
				"warranty": 500000.0,
				"unlimited_servers": 0
			},
			...
		],
	},
	"status": {
		"code": 200,
		"success": true,
		"message": "success"
	}
}

인증서 주문

POST /v1/order/add

인증서를 신규 또는 갱신시 요청

Header

  • 필수

Parameter

  • 토큰 / 필수
    토큰 / 필수
    SAN 도메인명(콤마로 구분) / 필수 / (Common name을 제외한 추가 도메인만 입력: domain2.com,domain3.com,...)
    SAN 도메인별 DCV(콤마로 구분) / 필수 / (Common name을 제외한 추가 DCV만 입력: dns,http,...)
    추가 SAN 도메인(숫자) / 선택
    토큰 / 필수
    토큰 / 필수
    SAN 도메인명(콤마로 구분) / 필수 / (Common name을 제외한 추가 도메인만 입력: *.domain2.com,*.domain3.com,...)
    SAN 도메인별 DCV(콤마로 구분) / 필수 / (Common name을 제외한 추가 DCV만 입력: dns,http,...)
    추가 SAN 도메인(숫자) / 선택
  • 주문타입 / 필수 / (입력하실값: new|renew 중 택1)
  • 제품ID / 필수
  • 인증기간(개월) / 필수 / (입력하실값: 12|24|36|48|60 중 택1)
  • 웹서버 / 필수
  • Common name(도메인) 소유인증 / 필수 / (입력하실값: email)
    Common name(도메인) 이메일주소 / 필수
    Common name(도메인) 소유인증 / 필수 / (입력하실값: dns|http|https 중 택1)
  • 직접생성 / 필수
    자동생성여부 / 필수 / (Y)
    Common name(도메인)명 / 필수
    영문 회사명 / 필수
    영문 부서명 / 필수
    영문 국가코드(2자) / 필수 / (예 KR)
    영문 도 / 필수
    영문 시 / 필수
    이메일주소 / 필수
    선택 / (기본 2048bit)
  • 관리자 영문 성 / 필수
    관리자 영문 이름 / 필수
    관리자 이메일주소 / 필수
    관리자 연락처(숫자만) / 필수 / (예 82216444308)
    관리자 영문 직급 / 필수 / (예 CEO)
    관리자 영문 시 / 필수 / (예 Seoul)
    관리자 영문 도 / 필수 / (예 None)
    관리자 우편번호(숫자만) / 필수
    관리자 영문 국가코드(2자) / 필수 / (예 KR)
    기술자 영문 성 / 필수
    기술자 영문 이름 / 필수
    기술자 이메일주소 / 필수
    기술자 연락처(숫자만) / 필수 / (예 82216444308)
    기술자 영문 직급 / 필수 / (예 Manager)
    기술자 영문 시 / 필수 / (예 Seoul)
    기술자 영문 도 / 필수 / (예 None)
    기술자 우편번호(숫자만) / 필수 / (예 03995)
    기술자 영문 국가코드(2자) / 필수 / (예 KR)
    관리자 영문 회사명 / 필수 / (예 DEEPACT Inc.)
    관리자 영문 성 / 필수
    관리자 영문 이름 / 필수
    관리자 이메일주소 / 필수
    관리자 연락처(숫자만) / 필수 / (예 82216444308)
    관리자 영문 직급 / 필수 / (예 CEO)
    관리자 영문 시 / 필수 / (예 Seoul)
    관리자 영문 도 / 필수 / (예 None)
    관리자 영문 상세주소 / 필수 / (예 161, Yanghwa-ro, Mapo-gu)
    관리자 우편번호(숫자만) / 필수 / (예 03995)
    관리자 영문 국가코드(2자) / 필수 / (예 KR)
    기술자 영문 회사명 / 필수 / (예 DEEPACT Inc.)
    기술자 영문 성 / 필수
    기술자 영문 이름 / 필수
    기술자 이메일주소 / 필수
    기술자 연락처(숫자만) / 필수 / (예 82216444308)
    기술자 영문 직급 / 필수 / (예 Manager)
    기술자 영문 시 / 필수 / (예 Seoul)
    기술자 영문 도 / 필수 / (예 None)
    기술자 영문 상세주소 / 필수 / (예 161, Yanghwa-ro, Mapo-gu)
    기술자 우편번호(숫자만) / 필수 / (예 03995)
    기술자 영문 국가코드(2자) / 필수 / (예 KR)
    회사 영문 회사명 / 필수 / (예 DEEPACT Inc.)
    회사 영문 부서명 / 필수 / (예 IT Develop)
    회사 연락처(숫자만) / 필수 / (예 82216444308)
    회사 영문 시 / 필수 / (예 Seoul)
    회사 영문 도 / 필수 / (예 None)
    회사 영문 상세주소 / 필수 / (예 161, Yanghwa-ro, Mapo-gu)
    회사 우편번호(숫자만) / 필수 / (예 03995)
    회사 영문 국가코드(2자) / 필수 / (예 KR)
    회사 DUNS Number / 선택
    회사 LEI Code / 선택
  • * token 항목은 토큰 발급을 참조해주세요.
    * product_id 항목은 제품을 참조해주세요.
    * web_server 항목은 도구 - 웹서버를 참조해주세요.

Response

  • Name Type Description
    order_code String 주문코드
    balance Integer 예치금 잔액 (원)
    pay Integer 지불한 예치금 (원)
    csr String auto_csr = Y
    key String auto_csr = Y
  • Name Type Description
    code Integer HTTP 응답코드
    success Boolean 요청 성공 여부
    message String 요청 응답메시지

cURL 요청 예제

curl -X POST -H "Accept: application/json" -d 'Parameter1={값1}&Parameter2={값2}...' https://api.koreassl.com/v1/order/add

응답 예제

{
	"data":{
		"order_code": "bc8c35800a4414647bb19a0e623a6b69",
		"balance": 9905480,
		"pay": 8410,
		"csr": "-----BEGIN CERTIFICATE REQUEST-----\nMIIC0D...",
		"key": "-----BEGIN PRIVATE KEY-----\nMIIEvgIBA..."
		
	},
	"status":{
		"code": 200,
		"success": true,
		"message": "success"
	}
}

주문 상태

GET /v1/order/status

주문한 인증서 상태 조회

Header

  • 필수

Parameter

  • 토큰 / 필수
  • 주문코드 / 필수
  • * order_code는 주문완료시 리턴

Response

  • Name Type Description remarks
    order_type String 주문종류 NULL: 주문전 / new: 신규 / renew: 갱신
    order_id String 주문ID (고객지원용)
    order_code String 주문코드
    product_id String 제품ID
    product String 제품명
    product_cate String 제품종류 single / multi / wildcard / multi-wildcard
    validation_method String 검증 DV / OV / EV
    period Integer 기간 (개월) 3 / 12 / 24 / 36 / 48
    san Integer SAN 추가 개수 (추가도메인) 0: 추가없음
    csr_code String CSR 코드 NULL: 주문전
    crt_code String CRT 코드 NULL: 주문전
    ca_code String CA 코드 NULL: 주문전
    web_server String 웹서버ID NULL: 주문전
    domain String 도메인 NULL: 주문전
    domains String 추가 도메인 NULL: 주문전 또는 추가없음
    dcv String DCV NULL: 주문전 / email / dns / http / https
    dcv_email String DCV Email NULL: DCV email인증 미사용
    dcv_http_link String DCV http/https link NULL: DCV 인증전 (주문진행중)
    dcv_http_filename String DCV http/https filename NULL: DCV 인증전 (주문진행중)
    dcv_http_content String DCV http/https content NULL: DCV 인증전 (주문진행중)
    dcv_dns_record String DCV DNS record NULL: DCV 인증전 (주문진행중)
    dcv_status String Common name (도메인) DCV 인증상태 1: 인증전 / 2: 인증됨
    san_dcv_req String
    멀티도메인 | 멀티와일드에 해당
    SAN 도메인별 DCV (Common name을 제외한 DCV: abc@abc.com, dns, ...)
    NULL: SAN 도메인별 DCV 인증전 (주문진행중)
    san_dcv_res san_dcv_res[]
    멀티도메인 | 멀티와일드에 해당
    SAN DCV 요청결과
    NULL: SAN 도메인별 DCV 인증전 (주문진행중)
    valid_from String 인증서 유효기간 시작일 NULL: 발급전
    valid_till String 인증서 유효기간 종료일 NULL: 발급전
    admin_firstname String 관리자 이름 NULL: 주문전
    admin_lastname String 관리자 성 NULL: 주문전
    admin_email String 관리자 이메일 NULL: 주문전
    admin_phone String 관리자 연락처 NULL: 주문전
    admin_title String 관리자 직급 NULL: 주문전
    admin_city String 관리자 주소 (시) NULL: 주문전
    admin_address String 관리자 상세주소 NULL: 주문전
    admin_state String 관리자 주소 (도) NULL: 주문전
    admin_zipcode String 관리자 우편번호 NULL: 주문전
    admin_country String 관리자 국가코드 NULL: 주문전
    admin_organization String 관리자 회사 NULL: 주문전
    tech_firstname String 기술자 이름 NULL: 주문전
    tech_lastname String 기술자 성 NULL: 주문전
    tech_email String 기술자 이메일 NULL: 주문전
    tech_phone String 기술자 연락처 NULL: 주문전
    tech_title String 기술자 직급 NULL: 주문전
    tech_city String 기술자 주소 (시) NULL: 주문전
    tech_address String 기술자 상세주소 NULL: 주문전
    tech_state String 기술자 주소 (도) NULL: 주문전
    tech_zipcode String 기술자 우편번호 NULL: 주문전
    tech_country String 기술자 국가코드 NULL: 주문전
    tech_organization String 기술자 회사 NULL: 주문전
    company_organization String 회사명 NULL: 주문전
    company_department String 회사 부서 NULL: 주문전
    company_duns String 회사 DUNS Number NULL: 주문전
    company_lei String 회사 LEI코드 NULL: 주문전
    company_phone String 회사 전화번호 NULL: 주문전
    company_city String 회사 주소 (시) NULL: 주문전
    company_state String 회사 주소 (도) NULL: 주문전
    company_zipcode String 회사 우편번호 NULL: 주문전
    company_address String 회사 상세주소 NULL: 주문전
    company_country String 회사 국가코드 NULL: 주문전
    status String 상태 active / ready / processing / pending / processing / cancelled / failed / expired / hold / rejected / incomplete
  • Name Type Description
    status_description String SAN DCV 상태
    san_name String SAN 도메인 명
    validation_method String 검증
    validation http 검증결과
    status String 검증상태
  • Name Type Description
    filename String 파일명
    link String 링크
    content String 내용
  • Name Type Description
    code Integer HTTP 응답코드
    success Boolean 요청 성공 여부
    message String 요청 응답메시지

cURL 요청 예제

curl -X GET -H "Accept: application/json" https://api.koreassl.com/v1/order/status?token={토큰}&order_code={주문코드}

응답 예제

{
	"data":{
		"order_type": null,
		"order_id": "O-GHN-562-18811",
		"order_code": "03f05b217cd447b1f1915fa6e72518bf",
		"product_id": "77",
		"ca": "Sectigo",
		"product": "PositiveSSL Multi-Domain",
		"validation_method": "DV",
		"period": 12,
		"san": 0,
		"csr_code": "-----BEGIN CERTIFICATE REQUEST-----\...",
		"crt_code": "-----BEGIN CERTIFICATE-----\...",
		"ca_code": "-----BEGIN CERTIFICATE-----\...",
		"web_server": null,
		"domain": null,
		"domains": null,
		"dcv": "http",
		"dcv_email": null,
		"dcv_http_link": "http://0000.com/.well-known/pki-validation/37D6A128E4D26509E4100005B9CF0000.txt",
		"dcv_http_filename": "37D6A128E4D26509E41C0115B9CF55CC.txt",
		"dcv_http_content": "7FC1D00B0FDA9A41D09CAE79B01EBC0D94A248500000258D171E89987750000\r\ncomodoca.com\r\nt0000352001589280000",
		"dcv_dns_record": null,
		"dcv_status": "2",
		"dcv_emails": null,
		"san_dcv": " null,
		"admin_firstname": "gil-dong",
		"admin_lastname": "hong",
		"admin_email": "hong@deepact.com",
		"admin_phone": null,
		"admin_title": "CEO",
		"admin_city": "",
		"admin_address": "",
		"admin_state": "",
		"admin_zipcode": "",
		"admin_country": "",
		"admin_organization": "",
		"tech_firstname": "gil-dong",
		"tech_lastname": "hong",
		"tech_email": "deepact@deepact.com",
		"tech_phone": null,
		"tech_title": "CEO",
		"tech_city": "",
		"tech_address": "",
		"tech_state": "",
		"tech_zipcode": "",
		"tech_country": "",
		"tech_organization": "",
		"company_organization": null,
		"company_department": null,
		"company_duns": null,
		"company_lei": null,
		"company_phone": null,
		"company_city": null,
		"company_state": null,
		"company_zipcode": null,
		"company_address": null,
		"company_country": null,
		"status": "active"
	},
		"status":{
		"code": 200,
		"success": true,
		"message": "success"
	}
}

주문 취소

POST /v1/order/cancel

주문 인증서의 취소(취소 및 환불은 정책에 따라 진행)

Header

  • 필수

Parameter

  • 토큰 / 필수
  • 주문코드 / 필수
  • * token 항목은 토큰 발급을 참조해주세요.

Response

  • Name Type Description
    order_code String 취소된 주문코드
  • Name Type Description
    code Integer HTTP 응답코드
    success Boolean 요청 성공 여부
    message String 요청 응답메시지

cURL 요청 예제

curl -X POST -H "Accept: application/json" -d 'token={토큰}&order_code={주문코드}' https://api.koreassl.com/v1/order/cancel

응답 예제

{
	"data":{
		"order_code": "6af92ba9ec89698c6bbef3daa85a0000"
	},
	"status":{
		"code": 200,
		"success": true,
		"message": "success"
	}
}

예치금

GET /v1/account/balance

계정의 예치금 잔액 조회

Header

  • 필수

Parameter

  • 필수
  • * token 항목은 토큰 발급을 참조해주세요.

Response

  • Name Type Description
    balance Integer 예치금 잔액 (원)
  • Name Type Description
    code Integer HTTP 응답코드
    success Boolean 요청 성공 여부
    message String 요청 응답메시지

cURL 요청 예제

curl -X GET -H "Accept: application/json" https://api.koreassl.com/v1/account/balance?token={발급받은토큰}

응답 예제

{
	"data":{
		"balance": 254850
	},
	"status":{
		"code": 200,
		"success": true,
		"message": "success"
	}
}

웹서버

GET /v1/tools/webservers

웹서버 조회

Header

  • 필수

Parameter

  • 인증기관 / 필수
  • * 조회가능한 인증기관(CA)는 sectigo | digicert | symantec | thawte | geotrust | rapidssl 중 하나만 선택가능하며 대소문자를 구분하지 않습니다.

Response

  • Name Type Description
    webservers webservers[] 웹서버
  • Name Type Description
    software String 웹서버명
    id String 고유ID (제품 주문시 필요한 항목)
  • Name Type Description
    code Integer HTTP 응답코드
    success Boolean 요청 성공 여부
    message String 요청 응답메시지

cURL 요청 예제

curl -X GET -H "Accept: application/json" https://api.koreassl.com/v1/tools/webservers?ca={인증기관}

응답 예제

{
	"data": {
		"webservers": [
			{	
				"software": "AOL",
				"id": "1"
			},
			  {
				"software": "Apache-SSL (Ben-SSL, not Stronghold)",
				"id": "3"
			},
			  {
				"software": "WHM/cPanel",
				"id": "31"
			},
			...
		],
		"ca": "sectigo"
	},
	"status": {
		"code": 200,
		"success": true,
		"message": "success"
	}
}

도메인 이메일

GET /v1/tools/domainemail

도메인 관리자 이메일 조회 (whois)

Header

  • 필수

Parameter

  • 도메인명 / 필수
  • 인증기관 / 필수
  • * domain: 한글도메인의 경우 퓨니코드(Punycode)로 변환후 사용가능합니다.
    * ca: sectigo | digicert | symantec | thawte | geotrust | rapidssl 중 하나만 선택가능하며 대소문자를 구분하지 않습니다.

Response

  • Name Type Description
    emails Array 사용가능한 이메일주소
    ca String 인증기관
  • Name Type Description
    code Integer HTTP 응답코드
    success Boolean 요청 성공 여부
    message String 요청 응답메시지

cURL 요청 예제

curl -X GET -H "Accept: application/json" https://api.koreassl.com/v1/tools/domainemail?domain={도메인명}&ca={인증기관}

응답 예제

{
	"data":{
		"emails":[
			"deepact@deepact.com",
			"admin@koreassl.com",
			"administrator@koreassl.com",
			"hostmaster@koreassl.com",
			"postmaster@koreassl.com",
			"webmaster@koreassl.com"
		],
		"ca": "sectigo"
	},
	"status":{
		"code": 200,
		"success": true,
		"message": "success"
	}
}

CSR 생성

POST /v1/csr/generate

CSR 생성

Header

  • 필수

Parameter

  • 도메인 / 필수 / (www.를 생략한 도메인만 입력: domain.tld)
    도메인 / 필수 / (*.을 생략한 도메인만 입력: www.domain.tld 또는 domain.tld)
    도메인 / 필수 / (*.을 붙인 도메인만 입력: *.domain.tld)
    도메인 / 필수 / (*.을 생략한 도메인만 입력: www.domain.tld 또는 domain.tld)
  • 회사(영문) / 필수
  • 부서(영문) / 필수
  • 시(영문) / 필수 / (예 Seoul)
  • 도(영문) / 필수 / (예 None)
  • 국가코드(2자) / 필수 / (예 KR)
  • 이메일주소 / 필수
  • * common_name: 한글도메인의 경우 퓨니코드(Punycode)로 변환후 사용가능합니다.

Response

  • Name Type Description
    csr String CSR
    key String Key
  • Name Type Description
    code Integer HTTP 응답코드
    success Boolean 요청 성공 여부
    message String 요청 응답메시지

cURL 요청 예제

curl -X POST -H "Accept: application/json" -d 'common_name={도메인}&organization={회사}&organization_unit={부서}&city={시}&state={도}&email={이메일주소}&country={국가코드}' https://api.koreassl.com/v1/tools/csr/generate

응답 예제

{
	"data":{
		"csr": "-----BEGIN CERTIFICATE REQUEST...",
		"key": "-----BEGIN PRIVATE KEY..."
	},
	"status":{
		"code": 200,
		"success": true,
		"message": "success"
	}
}

CSR 디코더

POST /v1/tools/csr/decode

CSR 디코더

Header

  • 필수

Parameter

  • CSR / 필수

Response

  • Name Type Description
    CN String 도메인
    O String 회사 (영문)
    OU String 부서명 (영문)
    L String 시 (영문)
    S String 도 (영문)
    C String 국가코드 (2자)
    EMAIL String 이메일주소
  • Name Type Description
    code Integer HTTP 응답코드
    success Boolean 요청 성공 여부
    message String 요청 응답메시지

cURL 요청 예제

curl -X POST -H "Accept: application/json" -d 'csr={생성한CSR}' https://api.koreassl.com/v1/tools/csr/decode

응답 예제

{
	"data":{
		"CN": "koreassl.com",
		"O": "DEEPACT Inc.",
		"OU": "IT Dev Team",
		"L": "Seoul",
		"S": "None",
		"C": "KR",
		"EMAIL": "support@koreassl.com"
	},
	"status":{
		"code": 200,
		"success": true,
		"message": "success"
	}
}