{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"9e31f4cb-45e6-a126-5ab6-9b8b41fd0dff","name":"한겨레두레협동조합 MRM OpenAPI","description":"[![Doc. Version](https://img.shields.io/badge/document-v4.4-brightgreen.svg)](https://documenter.getpostman.com/view/1812646/7TRc9V3)\r\n\r\n# 1. 사전 준비\r\n\r\n## 1.1. MRM OpenAPI 공통 Spec.\r\n\r\nMRM OpenAPI는 HTTP RESTful Service 를 기반으로 하며, Request/Response시 Message 전송에 JSON Message Format을 사용한다.\r\n\r\n- 자원 조회에는 HTTP GET Method를 사용하며 URI Parameter로써 리소스를 식별한다.\r\n- 자원 등록/수정/삭제에는 편의상 HTTP POST Method 만을 사용하며 HTTP Body에 JSON 형식의 메시지로 리소스를 전송한다.\r\n- 모든 HTTP Request Header에는 [Content-Type : application/json]을 명시해야 한다.\r\n- Charset / Encoding은 utf-8 을 사용한다.\r\n\r\n## 1.2. 기관 인증\r\n\r\nMRM OpenAPI는 JWT 기반의 Bearer Token 인증 방식을 사용한다. 따라서 기관이 MRM OpenAPI 의 사용 권한을 인증 받기 위해서 발급 받은 Token 값을 매 Request 시 마다 아래 예제와 같이 HTTP Header의 [Authorization] 필드에 실어 보내야 한다. (인증 Token은 별도 절차로 발급)\r\n\r\nHTTP Header 예제\r\n```\r\nGET /v1/Common/BankCodes HTTP/1.1\r\nHost: openapi.hsit.co.kr\r\nContent-Type: application/json\r\nAuthorization: Bearer eyJ0eXAiOiJKV1QiLCJ…<Token 중간 생략>…paDw8LBE\r\n```\r\n\r\n## 1.3. Token 발급\r\n\r\nToken은 사전에 휴먼소프트웨어에서 발급을 받는다. Token 발급 시 OpenAPI를 이용할 서버의 공인 IP정보가 필요 하며, 해당 IP에서만 OpenAPI 사용이 가능하다.\r\n\r\n## 1.4. NICEPAY 결제 시스템 연동 관련\r\n\r\nNICEPAY 결제 시스템을 연동하고자 하는 경우, NICEPAY 사이트에서 제공하는 최신의 연동 가이드 문서를 참고하여 진행하도록 한다.\r\n\r\n### 1.4.1. NICEPAY 기술 지원 문의\r\n\r\n* 연락처 : 1661-0808\r\n* 이메일 : it@nicepay.co.kr\r\n\r\n### 1.4.2. 일시후원 연동 가이드 문서 다운로드\r\n\r\n* 다운로드 URL : https://home.nicepay.co.kr/homepg/skill_lib_intro.jsp\r\n* 로그인 계정 : 아이디 - nictest00 / 비밀번호 - nictest00\r\n\r\n### 1.4.3. 정기후원 연동 가이드 문서\r\n\r\n* NICEPAY 기술지원으로 연락하여 연동 가이드 받아야 함\r\n\r\n### 1.4.4. NICEPAY API 호출 시 필요한 고유 파라미터 정보\r\n\r\n* 각 기관(또는 단체) 담당자에게 문의 바람\r\n\r\n# 2. 프로그램 구현\r\n\r\nPHP의 구현 예\r\n```php\r\n<?php\r\nfunction httpGet($url)\r\n{\r\n    $token = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1bmlxdWVfbmFtZSI6IkdQRUEiLCJyb2xlIjoiT3JnYW5pemF0aW9uIiwiRW5jQ3VzdG9tZXJDb2RlIjoiZUppNTk5bllGOVVyQkRuRm1VNEh6dz09IiwiQWxsb3dlZFNlcnZlcklQIjoiMjIzLjI1NS4xODMuMTE4IiwiSXNDaGVja0FsbG93ZWRTZXJ2ZXJJUCI6IlRydWUiLCJpc3MiOiJodHRwOi8vb3BlbmFwaS5oc2l0LmNvLmtyIiwiYXVkIjoiMDk5MTUzYzI2MjUxNDliYzhlY2IzZTg1ZTAzZjAwMjIiLCJleHAiOjE3NTE1MzczNjcsIm5iZiI6MTQzNjE3NzM2N30.CKK91m3MrWeYoycYcWdkman41a5DsKSVP_5danZZMow';\r\n\r\n    $ch = curl_init();\r\n\r\n    $headers = array(\r\n        'Content-Type: application/json',\r\n        sprintf('Authorization: Bearer %1$s', $token)\r\n    );\r\n\r\n    curl_setopt($ch,CURLOPT_URL,$url);\r\n    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);\r\n    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);\r\n    curl_setopt($ch,CURLOPT_SSL_VERIFYPEER, false);\r\n    $output=curl_exec($ch);\r\n\r\n    curl_close($ch);\r\n    return $output;\r\n}\r\n\r\necho httpGet(\"http://localhost:60629/v1/Information/GetMemberEventInformation?memberNo=C0000248\");\r\n?>\r\n```\r\n\r\n# 3. 응답 코드\r\n\r\n| 분류 | 코드  | 설명 | 비고 |\r\n|-|-|-|-|\r\n| 공통 | 0000 | 정상(성공) ||\r\n|| 0001 | 존재하지 않는 기관정보 ||\r\n|| 0002 | 존재하지 않는 계정정보 ||\r\n|| 0003 | 유효하지 않은 IP접속 ||\r\n|| 0004 | MRM 서비스 이용 제한 ||\r\n|| 0005 | 등록되지 않은 토큰 ||\r\n|| 0006 | 사용할 수 없는 토큰 ||\r\n|| 0007 | 유효 기간이 만료된 토큰 ||\r\n|| 0010 | 입력 값이 없음 ||\r\n|| 0011 | 허용하지 않은 데이터 범위 ||\r\n|| 0012 | 올바르지 않은 입력 값 존재 ||\r\n|| 9000 | 시스템 오류 발생 ||\r\n|| 9999 | 기타 오류 ||\r\n| 코드조회 | 1001 | 상위코드가 없음 ||\r\n| 아이디 찾기 | 1010 | 잘못된 인증방법 ||\r\n|| 1011 | 성명 없음 ||\r\n|| 1012 | 검색조건 없음 ||\r\n| 결과 | 1020 | 일치하는 회원 없음 ||\r\n|| 1021 | 인증 받지 않은 회원 ||\r\n| 후원자인증 | 1030 | 잘못된 인증방법 ||\r\n|| 1031 | 성명 없음 ||\r\n|| 1032 | 검색조건 없음 ||\r\n|| 1033 | 발신자정보 없음 ||\r\n| 결과 | 1040 | 정보에 해당하는 회원 없음 ||\r\n|| 1041 | 이미 인증 받은 회원 ||\r\n| SMS전송 | 1050 | 전송가능기관이 아님 ||\r\n|| 1051 | 잔여포인트 부족 ||\r\n|| 1052 | 메시지전송 실패 ||\r\n|| 1053 | 잘못된 전송방법 ||\r\n|| 1054 | 발신번호 없음 ||\r\n|| 1055 | 수신번호 없음 ||\r\n|| 1056 | 메시지내용 없음 ||\r\n|| 1057 | 90byte 초과한 단문메시지 ||\r\n|| 1058 | 2,000byte 초과한 장문메시지 ||\r\n|| 1059 | 제목 없음 ||\r\n| 이메일 전송 | 1070 | 이메일 전송 실패 ||\r\n|| 1071 | 발신 이메일 없음 ||\r\n|| 1072 | 유효하지 않은 발신 이메일 ||\r\n|| 1073 | 수신 이메일 없음 ||\r\n|| 1074 | 유효하지 않은 수신 이메일 ||\r\n|| 1075 | 제목 없음 ||\r\n|| 1076 | 내용 없음 ||\r\n| 비밀번호 찾기 | 1090 | 아이디 없음 ||\r\n|| 1091 | 비밀번호 생성 실패 ||\r\n| 아이디 만들기 | 1100 | 회원번호 없음 ||\r\n|| 1101 | 아이디가 4자 미만 ||\r\n|| 1102 | 비밀번호 없음 ||\r\n|| 1103 | 비밀번호가 4자 미만 ||\r\n|| 1104 | 시스템 운영에 영향을 주는 아이디 ||\r\n|| 1105 | 중복아이디가 존재 ||\r\n|| 1106 | 아이디 생성 실패 ||\r\n| 영수증출력횟수증가 | 1120 | 영수증 번호가 없음 ||\r\n|| 1121 | 해당 영수증 정보가 없음 ||\r\n| 비밀번호변경 | 1130 | 현재 비밀번호가 없음 ||\r\n|| 1131 | 새 비밀번호가 없음 ||\r\n|| 1132 | 해당 회원이 없음 ||\r\n|| 1133 | 기존 비밀번호가 다름 ||\r\n| 회원탈퇴(탈퇴요청) | 1140 | 비밀번호 다름 ||\r\n|| 1141 | 회원기본정보 탈퇴처리 실패 ||\r\n|| 1142 | 소식지구독 탈퇴처리 실패 ||\r\n|| 1143 | 카드승인 탈퇴처리 실패 ||\r\n|| 1144 | 신용카드 자동이체 탈퇴처리 실패 ||\r\n|| 1145 | 로그인 계정 삭제 실패 ||\r\n|| 1146 | 현재 탈퇴요청 진행 중 ||\r\n| 납부항목추가 | 1160 | 납부구분코드가 없음 ||\r\n|| 1161 | 납부금액이 없음 ||\r\n|| 1162 | 시작 년월이 없음 ||\r\n| 납부항목수정 | 1170 | 회원 별ID가 없음 ||\r\n| 납부항목삭제 | 1180 | CMS회원승인이 진행중인 대상자 납부관련정보 변경 불가 ||\r\n| 회원중복체크 | 1190 | 비교할 정보가 하나도 없음 ||\r\n| 회원등록 | 1200 | 신규회원번호 생성 실패 ||\r\n|| 1201 | 동일한 성명과 기부자주민번호의 기존회원 존재 ||\r\n|| 1202 | 동일한 성명과 휴대전화번호의 기존회원 존재 ||\r\n|| 1203 | 동일한 성명과 이메일의 기존회원 존재 ||\r\n|| 1204 | 동일한 성명과 집전화번호의 기존회원 존재 ||\r\n|| 1205 | 유효하지 않은 계좌번호 ||\r\n|| 1206 | 지부코드 없음 ||\r\n|| 1207 | 회원유형 없음 ||\r\n|| 1208 | 휴대전화번호 없음 ||\r\n| 납부항목추가 | 1210 | 납부항목 데이터가 변경되어 다시 진행해야 함 ||\r\n|| 1211 | 처리된 데이터(ROW)가 없음 ||\r\n| 신용카드 정기 승인 | 1220 | 신용카드 호스트 확인 불가 ||\r\n|| 1221 | 처리대상 회원이 없음 ||\r\n|| 1222 | 신용카드 결제자명 없음 ||\r\n|| 1223 | 승인코드(빌키) 없음 ||\r\n|| 1224 | 상점아이디 없음 ||\r\n|| 1225 | 신용카드 승인일 없음 ||\r\n|| 1226 | 신용카드사 코드 없음 ||\r\n|| 1227 | 카드구분 없음 ||\r\n|| 1228 | 카드번호 없음 ||\r\n|| 1229 | 신용카드 유효기간 없음 ||\r\n| 결제정보 | 1240 | 납부방법 없음 ||\r\n|| 1241 | 납부금액 없음 ||\r\n|| 1242 | 납부주기개월 없음 ||\r\n|| 1243 | 납부일 없음 ||\r\n|| 1244 | 납부시작년월 없음 ||\r\n|| 1245 | 은행코드 없음 ||\r\n|| 1246 | 계좌번호 없음 ||\r\n|| 1247 | 예금주 성명 없음 ||\r\n|| 1248 | 예금주 주민번호 없음 ||\r\n| 최근 가입회원 목록조회 | 1260 | 조회 시작일 없음 ||\r\n|| 1261 | 조회 종료일 없음 ||\r\n|| 1262 | 유효하지 않은 조회 시작일 ||\r\n|| 1263 | 유효하지 않은 조회 종료일 ||\r\n|| 1264 | 유효하지 않은 조회 범위 ||\r\n| 회원 로그인 인증 | 1280 | 존재 하지 않는 아이디 ||\r\n|| 1281 | 비밀번호가 일치 하지 않음 ||\r\n| 회원 검색 | 1300 | 적어도 하나 이상의 입력값 필요 ||\r\n|| 1301 | 가입일 시작과 종료값이 함께 전달되어야 함 ||\r\n|| 1302 | 탈퇴일 시작과 종료값이 함께 전달되어야 함 ||\r\n| 납부 총계 조회 | 1310 | 적어도 하나 이상의 입력값 필요 ||\r\n|| 1311 | 납부일 시작과 종료값이 함께 전달되어야 함 ||\r\n| 납부 명단 조회 | 1320 | 적어도 하나 이상의 입력값 필요 ||\r\n|| 1321 | 납부일 시작과 종료값이 함께 전달되어야 함 ||\r\n| 결연 아동 목록 조회 | 1330 | 적어도 하나 이상의 입력값 필요 ||\r\n\r\n# 4. Parent Codes\r\n\r\n| 코드 | 코드명 |\r\n|-|-|\r\n| 2 | 소식지 |\r\n| 4 | 직업 |\r\n| 5 | 종교 |\r\n| 6 | 최종학력 |\r\n| 7 | 가입경로 |\r\n| 8 | 가입동기 |\r\n| 9 | 납부방법 |\r\n| 10 | 회원구분 |\r\n| 11 | 회원상태 |\r\n| 12 | 탈퇴경로 |\r\n| 13 | 탈퇴이유 |\r\n| 15 | 회원>사용자구분1 |\r\n| 16 | 회원>사용자구분2 |\r\n| 17 | 회원>사용자구분3 |\r\n| 18 | 회원>사용자구분4 |\r\n| 26 | 관심분야 |\r\n| 28 | 회원>사용자다중1 |\r\n| 29 | 회원>사용자다중2 |\r\n| 40 | 납부>유입경로 |\r\n| 41 | 납부>참여경로 |\r\n\r\n# 5. API","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"1812646","collectionId":"9e31f4cb-45e6-a126-5ab6-9b8b41fd0dff","publishedId":"7TKgsUS","public":true,"publicUrl":"https://handure-7TKgsUS.doc.mrm.openapi.hsit.co.kr","privateUrl":"https://go.postman.co/documentation/1812646-9e31f4cb-45e6-a126-5ab6-9b8b41fd0dff","customColor":{"top-bar":"F2F2EB","right-sidebar":"303030","highlight":"EF5B25"},"documentationLayout":"classic-double-column","version":"8.10.0","publishDate":"2018-01-25T03:50:05.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/768118b36f06c94b0306958b980558e6915839447e859fe16906e29d683976f0","favicon":"https://hsit.co.kr/favicon.ico"},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"}],"canonicalUrl":"https://handure-7tkgsus.doc.mrm.openapi.hsit.co.kr/view/metadata/7TKgsUS"}