개발가이드
요금제 구분
TR 슬림TR 슬림
하이픈 API마켓의 선불 수단인 ‘비즈머니’를 충전해서 사용하는 방식입니다.
계약서작성없이 상품신청 즉시 이용이 가능한 요금제로, 상품신청 또는 API호출 전에 비즈머니를 충전해놓으면 응답 시에 이용요금이 즉시 차감됩니다.
TR 시그니처TR 시그니처
하이픈 API마켓 상품 중 원본 계약서가 필요하거나 인증서정보가
필요한 상품의 경우 해당 요금제로 이용이 가능합니다.
상품신청 시 배정된 전문컨설턴트를 통해 상품계약서 작성이후 API
사용이 가능합니다.
해당요금은 정액사용량을 제공하며, 약정 사용량 초과 시 건 당과금이
발생하여 후불 요금명세서로 청구됩니다.
신청가능 요금제 예시
상품정보에 표시된 라벨의 요금제로
신청이 가능합니다.
상품 리스트
상품 상세페이지
요금제별 사용방법
TR슬림
- 1
요금제 라벨 확인
- 2
상품신청 버튼 클릭
- 3
TR슬림 요금제로 신청
-
상품권한 즉시 부여
- 4
비즈머니로 상품사용
TR시그니처
- 1
요금제 라벨 확인
- 2
상품신청 버튼 클릭
- 3
TR슬림 요금제로 신청(승인 전, 비즈머니로 상품사용)
- 4
전문컨설턴트를 통해 계약
* 상품권한 부여 - 5
계약담당자에게 받은인증서 정보 추출 파일 설치* 인증서정보가 필요한 상품만
- 6
후불청구로 상품사용
OAuth 2.0
HYPHEN은 공개 API의 인증을 위해서 OAuth 2.0 프로토콜 사용을 권장하고 있습니다.
- User_ID(회원계정)와 발급받은 HKey를 사용하여 HYPHEN 서버로 요청하시면, Access_Token을 발급받으실 수 있습니다.
- 발급받은 Access_Token은 HYPHEN API 호출 시, HTTP 헤더에 포함되어야 합니다.
- 만약 제 3자가 HYPHEN 기업고객의 User_ID와 보안키를 획득하면 보안문제가 발생할 수 있습니다. 따라서 Access_Token은 반드시 서버에서 이뤄져야합니다.
유효기간
- Access_Token은 일주일(7일)간 유효하므로 글로벌변수에 저장하여 재사용하는 것을 권장합니다.
- Access_Token이 만료되면, User ID, Hkey, 정보를 요청하여 재발급이 필요합니다.
- API 호출시마다, Access_Token을 새로발급받는 것은 너무 많은 리소스가 사용될 우려가 있습니다.
OAuth 2.0의 표준 권한 승인 방법
- (a) 서버(Server)와 클라이언트(Client)사이에 인증을 완료하면 권한 부여의 기능을 수행하는 엑세스 토큰*(Access_Token)을 증표로 전달
- (b) 클라이언트(Clinet)는 이 엑세스 토큰으로 보호된 자원(Protected Resource)에 접근하거나 서비스를 요청할 수 있음
- (c) 자원 서버(Resource Server)는 엑세스 토큰(Access_Token)을 기반으로 권한을 확인 후, 결과를 클라이언트에게 다시 보냄
- * 엑세스 토큰(Access Token)
-
보호된 자원에 접근하거나 서비스를 요청할 때, 클라이언트의 권한을 대표하여 확인용으로 사용함.
엑세스 토큰 하나로 계정 인증에 필요한 모든 것들을 확인할 수 있음
Endpoint
https://api.hyphen.im/oauth/token (post)
Request Header 예시
{
"Content-Type": "application/json"
}
Request Body 예시
{
"user_id": "hyphentest"
"hkey": "발급받은 Hkey"
}
Response Body 예시 (application/json)
{
"access_token": "075a2d84-dab4-983e-a103-efb5d782b874",
"token_type": "bearer",
"expires_in": 603638,
"scope": "read"
}
Oauth 토큰을 발급받았다면 헤더에 user-id와 Hkey 세팅을 할 필요없이 토큰만으로 API 통신이 가능합니다.
Ex) Bearer + 발급받은 토큰
기존(User ID + Hkey 인증)
Header
{
"user-id": "hyphentest",
"hkey": "발급받은 Hkey"
}
Body
{
"data1": "data",
"data2": "data"……
}
토큰 발급 후 (Oauth 인증)
Header
{
"Authorization": "Bearer 84bde070-f5d8-4cda-b2c5-a0c……"
}
Body
{
"data1": "data",
"data2": "data"……
}
개요
로컬경로에 있는 인증서정보를 가지고 해당 인증서에 대한 정보를 가져 올 수 있으며, '인증서목록뷰(Web)'에서는 인증서의
pem값을 추출해서 API에 활용하실 수 있습니다.
인증서비밀번호을 넣으면 결과에 'DER2PEM'과 'KEY2PEM'의 base64값이 추출이 되는데,
'-----BEGIN CERTIFICATE-----','-----END CERTIFICATE-----',
'-----BEGIN ENCRYPTED PRIVATE KEY-----','-----END ENCRYPTED PRIVATE KEY-----'의 문자들과
'\n' 개행문자를 모두 제거하시고 API요청의 입력값으로 사용하실 수 있습니다.
적용방법 및 코드예시
설치 파일을 다운로드가 가능하도록, 웹서버의 특정 경로에 배치
JS 선언 - 반드시 jQuery일 필요는 없으며, Ajax를 통한 웹서비스 호출 방식으로 이용 가능
코드예시
<script type="text/javascript" src="com/json2.min.js">
<script type="text/javascript" src="com/jquery-1.11.2.min.js">
<script type="text/javascript">
function loadDoc(s_op, s_inJson) {
$.ajax({
type: "POST",
url: "https://127.0.0.1:16566/?op=" + s_op,
data: s_inJson || "{}",
crossDomain: true,
crossOrigin: true,
dataType: "json",
contentType: "application/json; charset=UTF-8",
success: function(data) { // data : outJson Object
console.log(data);
/* 결과 확인 및 data(outJson) 처리 로직이 들어가면 됨 */
},
error: function(xhr, status, error) {
console.log(status);
/* s_op가 'setup'일 경우에 설치파일 다운로드 로직 구현 */
if ('setup' == s_op) {
alert('프로그램 설치가 필요합니다.');
var nxExeDownloadUrl = '[설치파일 다운로드 경로]';
if(!$('#ifrFile').length) {
$("body").append($("<iframe/>",{id:"ifrFile",style:"display:none;"}));
}
$('#ifrFile').attr('src', nxExeDownloadUrl);
} else {
/* 에러 처리 로직이 들어가면 됨 */
}
}
});
}
</script>
개요
API를 사용하면 상품에 따라 엔드 유저의 데이터를 사용할 수 있습니다.
API는 2가지 형태로 제공됩니다. 개인 사용자 API와 기업 사용자(개인 사업자, 법인 사업자) API입니다.
같은 API임에도 각 기관에서 요구하는 데이터와 제공하는 데이터가 다릅니다. 이 내용을 API문서에 정리했습니다.
하이픈 코드집
은행, 시군구, 세목 등 요청에 필요한 기관코드를 모두 확인할 수 있으며, 상품별로 사용가능한 코드도 확인할 수 있습니다.
기관코드 및 호출 예시
Body 입력 값에 기관코드를 입력하여 호출합니다.
코드 | 기관명 |
---|---|
01 | 한국은행 |
03 | 산업은행 |
04 | 기업은행 |
11 | 국민은행 |
12 | 수협은행 |
13 | 수출입은행 |
18 | NH농협은행 |
19 | 지역 농.축협 |
21 | 우리은행 |
01 | 제일은행 |
코드예시
{
"bank_cd": "011",
"acct_no": "110000000000",
"acct_nm": “홍길동",
"id_no": "900101",
"amount": ""
}