Request
+| Http Method | +POST | +
|---|---|
| 프로토콜 | +HTTP/1.1 | +
| HOST | +api.munjaon.co.kr | +
| Service Port | +443 | +
diff --git a/src/main/java/itn/let/kakao/user/kakaoAt/web/KakaoAlimTalkTemplateController.java b/src/main/java/itn/let/kakao/user/kakaoAt/web/KakaoAlimTalkTemplateController.java index f6a3a06e..95681e48 100644 --- a/src/main/java/itn/let/kakao/user/kakaoAt/web/KakaoAlimTalkTemplateController.java +++ b/src/main/java/itn/let/kakao/user/kakaoAt/web/KakaoAlimTalkTemplateController.java @@ -305,6 +305,9 @@ public class KakaoAlimTalkTemplateController { KakaoReturnVO kakaoTemplateInfo =kakaoApiTemplate.selectKakaoApiTemplateDetail(kakaoVO); + System.out.println("kakaoTemplateInfo :; "+ kakaoTemplateInfo); + + String kakaoButtonTypeDs = ""; for(int i=0; i < kakaoTemplateInfo.getButtonList().size(); i++) { String buttonType = kakaoTemplateInfo.getButtonList().get(i).getLinkType(); diff --git a/src/main/java/itn/let/uat/uia/web/EgovMypageRESTAPIController.java b/src/main/java/itn/let/uat/uia/web/EgovMypageRESTAPIController.java index 3706a695..5eebcaa8 100644 --- a/src/main/java/itn/let/uat/uia/web/EgovMypageRESTAPIController.java +++ b/src/main/java/itn/let/uat/uia/web/EgovMypageRESTAPIController.java @@ -247,7 +247,25 @@ public class EgovMypageRESTAPIController{ } model.addAttribute("loginVO", loginVO); - return "web/api/apiSpec"; + return "web/api/munja/apiSpec"; + } + + /** + * @param model + * @return + * @throws Exception + */ + @RequestMapping(value="/web/api/apiAtSpec.do") + public String apiAtSpec(ModelMap model) + throws Exception { + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + + if(loginVO == null) { + return "redirect:/web/user/login/login.do"; + } + model.addAttribute("loginVO", loginVO); + + return "web/api/at/apiSpec"; } /** diff --git a/src/main/webapp/WEB-INF/jsp/web/api/at/apiSpec.jsp b/src/main/webapp/WEB-INF/jsp/web/api/at/apiSpec.jsp new file mode 100644 index 00000000..33381d46 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/web/api/at/apiSpec.jsp @@ -0,0 +1,82 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%> + + + +
| Http Method | +POST | +
|---|---|
| 프로토콜 | +HTTP/1.1 | +
| HOST | +api.munjaon.co.kr | +
| Service Port | +443 | +
| 키 | +설명 | +타입 | +필수 | +
|---|---|---|---|
| mberId | +사용자 ID | +String | +O | +
| accessKey | +인증용 API Key | +String | +O | +
| callFrom | +발신자 번호(아이디에 등록되어 있는 번호) | +String | +O | +
| callToList | +수신자 번호(콤마(,) 기준으로 입력) | +String | +O | +
| smsTxt | +메시지 내용 | +String(1~2,000Byte) | +O | +
| nameStr | +메시지 내용에 [*이름*]이 있으면 치환용 이름 입력( | 로 구분 ) | +String | +X | +
| test_yn | +테스트 데이터 여부 | +String | +X | +
※ HTTPS 프로토콜을 사용하여 POST로 요청합니다.
+※ 문자 텍스트 용량(byte) : 한글 1자당 2byte, 영문/숫자 1자당 1byte
+{
++ "mberId":"홍길동" +
++ ,"accessKey":"XXXXXXXXXXXXXX414050694b953" +
++ ,"callFrom":"01012341234" +
++ ,"callToList":"01011111111,01022222222,01033333333" +
++ ,"smsTxt":"문자 테스트~![*이름*]" +
++ ,"nameStr":"홍길동1|홍길동2|홍길동3" +
++ ,"test_yn":"" +
+}
+| 키 | +설명 | +타입 | +
|---|---|---|
| resultCode | +성공 여부("0" 아니면 실패) | +String | +
| data | +결과값 객체(성공 : 데이터, 실패 : 메시지) | +Object | +
| [data].msgGroupId | +메시지 그룹 ID | +String | +
| [data].msgType | +메시지 타입(4 : 단문, 6 : 장문) | +String | +
| [data].blockCnt | +수신거부 건수 | +String | +
| [data].failCnt | +전송 실패 건수 | +String | +
| [data].successCnt | +성공 건수 | +String | +
| [data].test_yn | +테스트 데이터 여부 | +String | +
※ JSON 객체로 응답합니다.
+{
++ "resultCode":"0" +
++ ,"data"{ +
++ "msgGroupId":"MSGGID_0000000000000" +
++ ,"msgType":"SMS" +
++ ,"resultCode":"0" +
++ ,"blockCnt":"0" +
++ ,"failCnt":"0" +
++ ,"successCnt":"3" +
++ ,"test_yn":null +
+}
+}
+{
++ "resultCode":"1040" +
++ ,"data":"치환 데이터 오류" +
+}
+| Http Method | +POST | +
|---|---|
| 프로토콜 | +HTTP/1.1 | +
| HOST | +api.munjaon.co.kr | +
| Service Port | +443 | +
| 키 | +설명 | +타입 | +필수 | +
|---|---|---|---|
| mberId | +사용자 ID | +String | +O | +
| accessKey | +인증용 API Key | +String | +O | +
| callFrom | +발신자 번호(아이디에 등록되어 있는 번호) | +String | +O | +
| test_yn | +테스트 데이터 여부 | +String | +X | +
| callTo_1 | +수신자 번호 1 | +String | +O | +
| smsTxt_1 | +메시지 내용 1 | +String(1~2,000Byte) | +O | +
| ... | +... | +... | +X | +
| callTo_100 | +수신자 번호 100 | +String | +X | +
| smsTxt_100 | +메시지 내용 100 | +String(1~2,000Byte) | +X | +
※ 문자 텍스트 용량(byte) : 한글 1자당 2byte, 영문/숫자 1자당 1byte
+{
+"mberId":"홍길동"
+,"accessKey":"XXXXXXXXXXXXXX414050694b953"
+,"callFrom":"01012341234"
+,"test_yn":""
+,"callTo_1":"01011111111"
+,"smsTxt_1":"문자 테스트 1"
+,"callTo_2":"01022222222"
+,"smsTxt_2":"문자 테스트 2"
+}
+| 키 | +설명 | +타입 | +
|---|---|---|
| resultCode | +성공 여부("0" 아니면 실패) | +String | +
| data | +결과값 객체(성공 : 데이터, 실패 : 메시지) | +Object | +
| [data].msgGroupIdList | +메시지 그룹 ID 리스트 | +List String | +
| [data].msgType | +메시지 타입(4 : 단문, 6 : 장문) | +String | +
| [data].blockCnt | +수신거부 건수 | +String | +
| [data].failCnt | +전송 실패 건수 | +String | +
| [data].successCnt | +성공 건수 | +String | +
| [data].test_yn | +테스트 데이터 여부 | +String | +
※ JSON 객체로 응답합니다.
+{
+"resultCode":"0"
+,"data":[
+"msgGroupIdList":[
+{
+"MSGGID_0000000013451"
+}
+,{
+"MSGGID_0000000013452"
+}
+]
+,"msgTypeList":[
+{
+"SMS"
+}
+,{
+"SMS"
+}
+]
+,"resultCode":"0"
+,"successCnt":"2"
+,"failCnt":"0"
+,"blockCnt":"0"
+,"test_yn":null
+]
+}
+{
+"resultCode":"1040"
+,"data":"치환 데이터 오류"
+}
+| Http Method | +POST | +
|---|---|
| 프로토콜 | +HTTP/1.1 | +
| HOST | +api.munjaon.co.kr | +
| Service Port | +443 | +
| 키 | +설명 | +타입 | +필수 | +
|---|---|---|---|
| mberId | +사용자 ID | +String | +O | +
| accessKey | +인증용 API Key | +String | +O | +
| page | +페이지 번호 | +String | +X | +
| pageSize | +페이지당 출력 개수 | +String | +X | +
| startDate | +시작 일자 | +String | +X | +
| endDate | +마감 일자 | +String | +X | +
| test_yn | +테스트 데이터 여부 | +String | +X | +
※ HTTPS 프로토콜을 사용하여 POST로 요청합니다.
+{
+"mberId":"홍길동"
+,"accessKey":"XXXXXXXXXXXXXX414050694b953"
+,"page":""
+,"pageSize":""
+,"startDate":""
+,"endDate":""
+,"test_yn":""
+}
+| 키 | +설명 | +타입 | +
|---|---|---|
| resultCode | +성공 여부("0" 아니면 실패) | +String | +
| data | +결과값 객체(성공 : 데이터, 실패 : 메시지) | +Object | +
| [data].message | +문자 | +String | +
| [data].next_yn | +다음 페이지 여부 | +String | +
| [data].objectList | +결과값 목록 | +Object List | +
| [data].msgGroupId | +메시지 그룹 ID | +String | +
| [data].msgId | +메시지 ID | +String | +
| [data].msgTypeName | +문자 구분명(단문, 장문, 그림) | +String | +
| [data].msgType | +메시지 타입(4 : 단문, 6 : 장문) | +String | +
| [data].callFrom | +발신자 번호 | +String | +
| [data].callTo | +수신자 번호 | +String | +
| [data].msgGroupCnt | +문자 발송 건수 | +String | +
| [data].sCnt | +성공 건수 | +String | +
| [data].fCnt | +실패 건수 | +String | +
| [data].wCnt | +대기 건수 | +String | +
| [data].msgResult | +발송 결과(성공 : S, 실패 : F) | +String | +
| [data].smsTxt | +문자 내용 | +String | +
| [data].subject | +제목 | +String | +
| [data].reqdate | +발송 일자 | +String | +
| [data].curState | +전송 처리 결과값 | +String | +
| [data].userId | +사용자 ID | +String | +
| [data].regdate | +등록 일자 | +String | +
| [data].reserveCYn | +예약 취소 여부 | +String | +
| [data].ttlCnt | +전체 요청 수 | +String | +
| [data].remainMsgCnt | +남은 문자 건수 | +String | +
| [data].totMsgCnt | +전체 문자 개수 | +String | +
※ JSON 객체로 응답합니다.
+{
+"resultCode":"0"
+,"data":[
+{
+"resultCode":"0"
+,"message": null
+,"next_yn":"n"
+,"msgGroupId":"MSGGID_0000000000000"
+,"objectList":[
+{
+"msgTypeName":"단문(SMS)"
+,"msgType":"4"
+,"callFrom":"01011112222"
+,"callTo":"01011112223"
+,"msgGroupCnt":"2"
+,"msgGroupId":"MSGGID_0000000013340"
+,"msgId":"MSGID_0000000000001"
+,"scnt":"2"
+,"fcnt":"0"
+,"wcnt":"0"
+,"msgResult":"S"
+,"smsTxt":"문자 내용 단문 예제"
+,"subject":null
+,"reqdate":"2023-06-13 17:48:07"
+,"curState":"3"
+,"userId":"testuser"
+,"regdate":"2023-06-13 17:48:07"
+,"reserveCYn":"N"
+,"ttlCnt":"1"
+,"remainMsgCnt":"40"
+,"totMsgCnt":"70"
+}
+,{
+"msgTypeName":"장문(LMS)"
+,"msgType":"6"
+,"callFrom":"01011112222"
+,"callTo":"01011112223"
+,"msgGroupCnt":"1"
+,"msgGroupId":"MSGGID_0000000013341"
+,"msgId":"MSGID_0000000000002"
+,"scnt":"1"
+,"fcnt":"0"
+,"wcnt":"0"
+,"msgResult":"S"
+,"smsTxt":"문자 내용 장문 예제"
+,subject":null
+,reqdate":"2023-06-02 11:46:50"
+,"curState":"3"
+,"userId":"testuser"
+,"regdate":"2023-06-02 11:46:49"
+,"reserveCYn":"N"
+,"ttlCnt":"1"
+,"remainMsgCnt":"40"
+,"totMsgCnt":"70"
+}
+]
+}
+]
+}
+{
+"resultCode":"3099"
+,"data":"기타 시스템 오류"
+}
+| Http Method | +POST | +
|---|---|
| 프로토콜 | +HTTP/1.1 | +
| HOST | +api.munjaon.co.kr | +
| Service Port | +443 | +
| 키 | +설명 | +타입 | +필수 | +
|---|---|---|---|
| mberId | +사용자 ID | +String | +O | +
| accessKey | +인증용 API Key | +String | +O | +
| msgGroupId | +메시지 그룹 ID | +String | +O | +
| page | +페이지 번호 | +String | +X | +
| pageSize | +페이지당 출력 개수 | +String | +X | +
| test_yn | +테스트 데이터 여부 | +String | +X | +
※ HTTPS 프로토콜을 사용하여 POST로 요청합니다.
+{
+"mberId":"홍길동"
+,"accessKey":"XXXXXXXXXXXXXX414050694b953"
+,"msgGroupId":"MSGGID_0000000011452"
+,"page":""
+,"pageSize":""
+,"test_yn":""
+}
+| 키 | +설명 | +타입 | +
|---|---|---|
| resultCode | +성공 여부("0" 아니면 실패) | +String | +
| data | +결과값 객체(성공 : 데이터, 실패 : 메시지) | +Object | +
| [data].message | +문자 | +String | +
| [data].next_yn | +다음 페이지 여부 | +String | +
| [data].objectList | +결과값 목록 | +Object List | +
| [data].msgGroupId | +메시지 그룹 ID | +String | +
| [data].msgId | +메시지 ID | +String | +
| [data].msgTypeName | +문자 구분명(단문, 장문, 그림) | +String | +
| [data].msgType | +메시지 타입(4 : 단문, 6 : 장문) | +String | +
| [data].callFrom | +발신자 번호 | +String | +
| [data].callTo | +수신자 번호 | +String | +
| [data].msgGroupCnt | +문자 발송 건수 | +String | +
| [data].sCnt | +성공 건수 | +String | +
| [data].fCnt | +실패 건수 | +String | +
| [data].wCnt | +대기 건수 | +String | +
| [data].msgResult | +발송 결과(성공 : S, 실패 : F) | +String | +
| [data].smsTxt | +문자 내용 | +String | +
| [data].subject | +제목 | +String | +
| [data].reqdate | +발송 일자 | +String | +
| [data].curState | +전송 처리 결과값 | +String | +
| [data].userId | +사용자 ID | +String | +
| [data].regdate | +등록 일자 | +String | +
| [data].reserveCYn | +예약 취소 여부 | +String | +
| [data].ttlCnt | +전체 요청 수 | +String | +
| [data].remainMsgCnt | +남은 문자 건수 | +String | +
| [data].totMsgCnt | +전체 문자 개수 | +String | +
※ JSON 객체로 응답합니다.
+{
+"resultCode":"0"
+,"data":[
+{
+"resultCode":"0"
+,"message": null
+,"next_yn":"n"
+,"msgGroupId":"MSGGID_0000000000000"
+,"objectList":[
+{
+"msgTypeName":"단문(SMS)"
+,"msgType":"4"
+,"callFrom":"01011112222"
+,"callTo":"01011112223"
+,"msgGroupCnt":"2"
+,"msgGroupId":"MSGGID_0000000013340"
+,"msgId":"MSGID_0000000000001"
+,"scnt":null
+,"fcnt":null
+,"wcnt":null
+,"msgResult":"S"
+,"smsTxt":"문자 내용 단문 예제"
+,"subject":null
+,"reqdate":"2023-06-13 17:48:08"
+,"curState":"3"
+,"userId":"testuser"
+,"regdate":"2023-06-13 17:48:07"
+,"reserveCYn":"N"
+,"ttlCnt":"10"
+,"remainMsgCnt":"0"
+,"totMsgCnt":"10"
+}
+,{
+"msgTypeName":"단문(SMS)"
+,"msgType":"4"
+,"callFrom":"01011112222"
+,"callTo":"01011112223"
+,"msgGroupCnt":"2"
+,"msgGroupId":"MSGGID_0000000013340"
+,"msgId":"MSGID_0000000000002"
+,"scnt":null
+,"fcnt":null
+,"wcnt":null
+,"msgResult":"S"
+,"smsTxt":"문자 내용 단문 예제"
+,subject":null
+,reqdate":"2023-06-13 17:48:09"
+,"curState":"3"
+,"userId":"testuser"
+,"regdate":"2023-06-13 17:48:07"
+,"reserveCYn":"N"
+,"ttlCnt":"10"
+,"remainMsgCnt":"0"
+,"totMsgCnt":"10"
+}
+]
+}
+]
+}
+{
+"resultCode":"4099"
+,"data":"기타 시스템 오류"
+}
+| Http Method | +POST | +
|---|---|
| 프로토콜 | +HTTP/1.1 | +
| HOST | +api.munjaon.co.kr | +
| Service Port | +443 | +
| 키 | +설명 | +타입 | +필수 | +
|---|---|---|---|
| mberId | +사용자 ID | +String | +O | +
| accessKey | +인증용 API Key | +String | +O | +
※ HTTPS 프로토콜을 사용하여 POST로 요청합니다.
+{
+"mberId":"String"
+,"accessKey":"String"
+}
+| 키 | +설명 | +타입 | +
|---|---|---|
| resultCode | +성공 여부("0" 아니면 실패) | +String | +
| data | +결과값 객체(성공 : 데이터, 실패 : 메시지) | +Object | +
| [data].longPrice | +장문 단가 | +String | +
| [data].longSendPsbltEa | +장문 발송 가능 건수 | +String | +
| [data].mberMoney | +현재 보유 금액 | +String | +
| [data].message | +문자 | +String | +
| [data].picturePrice | +그림문자 단가 | +String | +
| [data].pictureSendPsbltEa | +그림문자 발송 가능 건수 | +String | +
| [data].shortPrice | +단문 단가 | +String | +
| [data].shortSendPsbltEa | +단문 발송 가능 건수 | +String | +
※ JSON 객체로 응답합니다.
+{
+"resultCode":"0"
+,"data"{
+"longPrice":"50"
+,"longSendPsbltEa":"19651"
+,"mberMoney":"982586.7"
+,"message":null
+,"picturePrice":"90"
+,"pictureSendPsbltEa":"10917"
+,"shortPrice":"18"
+,"shortSendPsbltEa":"54588"
+}
+}
+{
+"resultCode":"5099"
+,"data":"기타 시스템 오류"
+}
+