# Restful API

\[개요]\
&#x20;\- bizplay에서 제공하는 API를 통해 ERP사에서 개발을 진행 합니다.

![\[그림1\] API방식](https://972577747-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LpS8Cypq6APyhE8CnwO%2F-LpWWjN0rVv1XqAbZOF_%2F-LpWWoQj3dx6RcGgpYkv%2FAPI%EB%B0%A9%EC%8B%9D.png?alt=media\&token=f713f00d-b6a7-4ca1-ac3f-ca458ddd1512)

&#x20;  ① Message API 호출을 bizplay로 전송 합니다.\
&#x20;  ② 데이터 조회/전송을 수행 합니다.\
&#x20;  ③ 요청된 결과 값을 다시 전송 합니다.\
&#x20;     ※ 고객을 식별할 수 있는 고유 키를 발급해 드립니다.\
&#x20;     ※ 운영 환경은 Https 인증방식 암호화 합니다.

\[방화벽 설정]\
&#x20;\- bizplay는 OPEN API 로 연결 되어 아래와 같은 Out-Bound 방화벽 설정이 필요 합니다.\
&#x20; (In-bound 없음)

![\[그림2\] 방화벽 설정](https://972577747-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LpS8Cypq6APyhE8CnwO%2F-LpWX6qsy2LL9iL0y0ic%2F-LpWX9MbuM6iYffC5hXH%2F%EB%B0%A9%ED%99%94%EB%B2%BD%EC%84%A4%EC%A0%95.png?alt=media\&token=9d6b8b96-76d0-4c06-9485-a4d2556f6676)

&#x20;  ① bizplay는 목동 KT IDC센터에 금융 클라우드 센터로 운영 합니다.\
&#x20;  ② 도착지 호출은 URL 방식으로 내부 서버에서 DNS를 찾을 수 없으면 HOSTS파일에 등록해야 합니다.\
&#x20;  ③ 개발 API 전문테스트는 개발 작업 시 에만 필요 합니다.\
&#x20;  ④ 이미지 링크는 ERP나 GW에서 첨부 이미지 링크가 필요할 경우 사용 합니다.

\[API 실습] \
&#x20;\- GET방식으로 외부 사이트를 이용하여 실습을 합니다.

![\[그림3\] API URL](https://972577747-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LpS8Cypq6APyhE8CnwO%2F-LpWX6qsy2LL9iL0y0ic%2F-LpWXN0xrGrqZEgMIW2y%2FAPI%20URL.png?alt=media\&token=b04b0e91-aeb0-4e11-bab7-6ba102a0cf71)

&#x20;▶ 개발 전문을 테스트 페이지에서 확인 합니다.\
&#x20;  1\. <http://webankdev.appplay.co.kr/api_test.jsp> 열고

![](https://972577747-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LpS8Cypq6APyhE8CnwO%2F-LpWX6qsy2LL9iL0y0ic%2F-LpWXYD__NwrIiSqVwoE%2FAPI%20TEST.png?alt=media\&token=124fe62d-7f92-4645-8d7e-659962d4edf9)

&#x20;  2\. ①"서비스 코드 목록"에 "카드 영수증 처리 내역 조회(0411)" 선택하여 ②"쿼리전송"을 클릭 합니다.\
&#x20;      ③ JSON\_OUT 결과물이 나옵니다.\
&#x20;  3\. 결과 확인 <http://jsonviewer.stack.hu/> 에 접속하여

![\[그림5\] JSON Viewer 화면](https://972577747-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LpS8Cypq6APyhE8CnwO%2F-LpWX6qsy2LL9iL0y0ic%2F-LpWXhyUXpFugyPSMxWJ%2FJSON%20Viewer.png?alt=media\&token=146439e5-6340-4477-ab57-626fde6dfe83)

&#x20;  4\.  ③번 결과물을 ④"Text" 항목 선택 후 붙여넣기를 합니다.\
&#x20;       ⑤"Format" 탭을 클릭하면 결과물이 정렬됩니다.

![\[그림6\] JSON Viewer 화면](https://972577747-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LpS8Cypq6APyhE8CnwO%2F-LpWX6qsy2LL9iL0y0ic%2F-LpWXwe_JhWj09XMaG74%2FJSON%20Viewer2.png?alt=media\&token=11ea5ac5-21d6-4df9-a1d4-22d634d86f90)

&#x20;5\.  ⑥"viewer" 탭을 클릭하면 정렬된 결과물을 확인 할 수 있습니다.

&#x20;▶ get 방식 API테스트\
&#x20;   \- URL 인코딩된 API 입력값 구하기\
&#x20;     URL인코딩(base64) : Protocol로 사용하는 http URL에는 의미를 가진 문자가 있음 해당문자를 URL에\
&#x20;    명령어로 인식하지 못하도록 암호화 하는 방법

![](https://972577747-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LpS8Cypq6APyhE8CnwO%2F-LpWX6qsy2LL9iL0y0ic%2F-LpWYAh5o-GL5y9ffFGi%2FAPI%20TEST2.png?alt=media\&token=bc73b9cb-4a39-499d-b0ff-0332c23cf8e2)

&#x20;  ① "서비스코드 목록" 에서 "카드 영수증 처리 내역 조회 (0411) 선택합니다.\
&#x20;         ② JSON\_IN 입력된 내역을 복사합니다.&#x20;

![\[그림8\] URL 인코딩](https://972577747-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LpS8Cypq6APyhE8CnwO%2F-LpWX6qsy2LL9iL0y0ic%2F-LpWYHTgYIXy9-XmB4P6%2Furl%EC%9D%B8%EC%BD%94%EB%94%A9.png?alt=media\&token=a4421acf-9add-43f5-8863-d6c102e916f6)

&#x20;  ③ [http://www.convertstring.com/ko/EncodeDecode/UrlEncode ](http://www.convertstring.com/ko/EncodeDecode/UrlEncode) 접속하여 \
&#x20;            복사한 내역을 "여기에 URL 인코딩하고자하는..." 붙여 넣습니다.\
&#x20;         ④ "URL 인코딩!"을 클릭합니다.\
&#x20;         ⑤ "여기에 URL 인코딩 된 텍스트를 복사 : " 출력물 값을 복사합니다.

![\[그림9\] 메모장](https://972577747-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LpS8Cypq6APyhE8CnwO%2F-LpWX6qsy2LL9iL0y0ic%2F-LpWYTSfgCCcJXgY7-Hp%2F%EB%A9%94%EB%AA%A8%EC%9E%A5.png?alt=media\&token=f6980bc0-18cf-4714-b5c4-01faf14d91ed)

&#x20;       ⑥ 메모장안에 "<http://webankdev.appplay.co.kr/geteway.do?JSONData=>" 입력합니다.\
&#x20;       ⑦에 ⑤결과물을 붙여 넣습니다.

![\[그림10\] Chrome 주소란](https://972577747-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LpS8Cypq6APyhE8CnwO%2F-LpWX6qsy2LL9iL0y0ic%2F-LpWYfOvWSoVxLTnOyf1%2FCHROME.png?alt=media\&token=8f78e9ff-f47e-4a40-95b8-76424b5e9e04)

&#x20;       ⑧ "Chrome" 실행하여 주소란에 "{그림9} 메모장" 안에 있는 내용을 복사하여 붙여넣습니다.

![\[그림11\] URL인코딩 실행 화면](https://972577747-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LpS8Cypq6APyhE8CnwO%2F-LpWX6qsy2LL9iL0y0ic%2F-LpWYvZdhXTvOhSMDd_D%2Furl%EC%9D%B8%EC%BD%94%EB%94%A9%EC%8B%A4%ED%96%89%ED%99%94%EB%A9%B4.png?alt=media\&token=850c105d-336e-482c-896e-b880aa1f1e61)

&#x20;      ⑨ URL 실행 후 결과물을 복사합니다.\
&#x20;         위에 "▶ 개발 전문을 테스트 페이지에서 확인 합니다." 에서 3\~5 설명되어 있는데로\
&#x20;        실습을 합니다.

&#x20;▶ 리바운드 전문\
&#x20;  \-  전문 통신 특성상 응답을 무한정 길게 전송이 불가능하기 때문에 일정 건별로 페이징을 반복하여 \
&#x20;    전문을 호출합니다.  &#x20;

![\[그림12\] NEXT\_KEY](https://972577747-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LpS8Cypq6APyhE8CnwO%2F-LpWX6qsy2LL9iL0y0ic%2F-LpWZ62niDb9AWXhz3cr%2FNEXT_KEY.png?alt=media\&token=35382e83-c445-40fa-8490-7243ac1b7ec3)

&#x20;  ① 쿼리전송을 하여 JSON\_OUT 결과창에 "NEXT\_KEY" 값이 있는지 확인합니다.\
&#x20;      "NEXT\_KEY" 값이 있으면 다음 페이지가 존재하기 때문에 다시 요청을 하여야 합니다.\
&#x20;  ② JSON\_IN 창에 "NEXT\_KEY" :" 뒤에 ①JSON\_OUT 창에  나온 "NEXT\_KEY"을 입력 후 쿼리전송을 합니다.

&#x20;▶JOSN\_IN 쿼리 설명\
&#x20;    \- JSON\_IN 쿼리는 "공통부", "입력부"로 나누어 집니다.

![\[그림13\] API 0910 조회](https://972577747-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LpS8Cypq6APyhE8CnwO%2F-LpWX6qsy2LL9iL0y0ic%2F-LpWZH2ZyFOr1Pr1AqWa%2FAPI0910.png?alt=media\&token=36983d56-e6eb-4dc7-970d-b08d9b74d669)

&#x20;\- <http://webankdev.appplay.co.kr/api_test.jsp> 접속하여\
&#x20;\- "서비스코드 목록"에서 "거래종류 코드 조회(0910)" 선택 후 "쿼리전송"을 클릭합니다.\
\
&#x20;\- 쿼리문\
&#x20;{① "API\_ID" : "0910",\
&#x20; ② "API\_KEY" : "5a0d6070-1853-4e37-a4b0-fd11e5699296", "ORG\_CD" : "2148635102", \
&#x20; ③ "REQ\_DATA" : {\
&#x20; ④ "BIZ\_NO" : "2148635102",\
&#x20; ⑤ "REQ\_CNT" : "",\
&#x20; ⑥ "NEXT\_KEY" : "" } }

&#x20;\- 공통부 설명 \
&#x20;① 서비스코드 "거래종류 코드(0910)" 조회ID 입니다.\
&#x20;② 발급받은 "인증키"를 입력합니다.\
\
&#x20;\- 입력부 설명\
&#x20;③ 입력부 시작 구분값입니다.\
&#x20;④ 조회하고자 하는 고객사 "사업자번호"를 입력합니다.\
&#x20;⑤ 조회할  "요청건수"를 입력합니다.\
&#x20;⑥ "다음결과키" 한화면에 일정 건수만 표시되어 다음건수 조회시 "JSON\_OUT" 응답내용에 \
&#x20;    "NEXT\_KEY" 입력합니다.
