3.4 RCS
이 문서는 메시지허브 RCS API 사용법을 안내합니다. API는 브랜드 관리, 템플릿 관리 등의 기능을 제공합니다. 각 API의 기능, 요청 및 응답 형식, 파라미터, 예시 등을 포함하고 있습니다.
2. 공통 헤더
Section titled “2. 공통 헤더”모든 API 요청에는 다음과 같은 공통 헤더 정보가 필요합니다.
| 헤더 이름 | 타입 | 필수 | 설명 |
|---|---|---|---|
| Authorization | String | ● | Bearer 방식의 인증 토큰 |
| Content-Type | String | ● | application/json;charset=UTF-8 |
3. 브랜드 API
Section titled “3. 브랜드 API”3.1. 브랜드 목록 조회
Section titled “3.1. 브랜드 목록 조회”기능 설명: 고객사에 등록된 모든 RCS 브랜드 목록을 조회합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand HTTP/1.1Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| apiId | String | ● | RCS Biz Center에 가입시 등록한 ID 입니다. | 최대 20자 |
| apiSecret | String | ● | RCS Biz Center에 가입시 발급된 clientSecret 입니다. | 최대 18자 |
Query Parameter
Section titled “Query Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| offset | String | ● | 시작 offset 번호(default: 0) 입니다. | |
| limit | String | ● | 조회 최대 건수(default: 100, maximum: 1000) 입니다. |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "100000", "message": "성공", "result": [ { "brandId": "BR.q...5", "brandName": "테스트 브랜드", "agencyId": "AG.123456", "approvalStatus": "approved", "chatbotDate": "2023-01-01T00:00:00Z", "messagebaseDate": "2023-01-01T00:00:00Z", "regDt": "2023-01-01T00:00:00Z", "updDt": "2023-01-01T00:00:00Z", "approvalDt": "2023-01-01T00:00:00Z" } ], "pagination": { "total": 1, "offset": 0, "limit": 100 }}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand?offset=0&limit=100" \ -H "accept: */*" \ -H "apiId: apiId... " \ -H "apiSecret: SK.Abkdls... " \ -H "Authorization: Bearer {token}"3.2. 브랜드 상세 조회
Section titled “3.2. 브랜드 상세 조회”기능 설명: 특정 브랜드 ID에 해당하는 브랜드의 상세 정보를 조회합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId} HTTP/1.1Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| apiId | String | ● | RCS Biz Center에 가입시 등록한 ID 입니다. | 최대 20자 |
| apiSecret | String | ● | RCS Biz Center에 가입시 발급된 clientSecret 입니다. | 최대 18자 |
Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| brandId | String | ● | 브랜드 ID |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": [ { "brandId": "BR.q7..N5", "name": "브랜드", "brandKey": "BK.z..ND", "status": "검수완료", "chatbotDate": "2021-09-10T11:30:01.000+09", "messagebaseDate": "2021-09-07T16:29:23.000+09", "registerDate": "2021-06-09T14:01:06.000+09", "updateDate": "2024-01-28T14:01:15.000+09", "approvalDate": "2024-01-28T14:01:15.000+09", "mediaUrl": [ { "fileId": "LT-BR.q...V", "fileName": "t...4.png", "url": "https://dev-image-rcsbizcenter.s3.ap-northeast-2.amazonaws.com/brand/BR.q...5/LT-BR.q...1.png", "typeName": "profile" } ], "menus": [ { "buttonType": "buy", "weblink": "https://naver.com", "feedinfoYn": "N" } ], "description": "브랜드설명", "tel": "0314000000", "categoryId": "HOS", "categoryName": "병원", "subCategoryId": "HOS016", "subCategoryName": "신경외과", "categoryOpt": "신경", "zipCode": "01234", "roadAddress": "도로명주소", "detailAddress": "상세주소", "email": "test@gmail.com", "webSiteUrl": "http://www.naver.com", "approvalReason": "검수완료" } ]}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/BK.z..ND" \ -H "accept: */*" \ -H "apiId: apiId... " \ -H "apiSecret: SK.Abkdls... " \ -H "Authorization: Bearer {token}"3.3. 브랜드 카테고리 조회
Section titled “3.3. 브랜드 카테고리 조회”기능 설명: 브랜드 등록 시 사용 가능한 카테고리 목록을 조회합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/categories HTTP/1.1Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| apiId | String | ● | RCS Biz Center에 가입시 등록한 ID 입니다. | 최대 20자 |
| apiSecret | String | ● | RCS Biz Center에 가입시 발급된 clientSecret 입니다. | 최대 18자 |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”| Name | Type | 설명 |
|---|---|---|
| code | String | 결과 코드 |
| message | String | 결과 메시지 |
| data[].categoryId | String | 카테고리 그룹 아이디 |
| data[].categoryName | String | 카테고리 그룹 이름 |
| data[].subCategories | Array | |
| data[].subCategories.subCategoryId | String | 하위 카테고리 아이디 |
| data[].subCategories.subCategoryName | String | 하위 카테고리 이름 |
JSON Response
Section titled “JSON Response”{ "code": "10000", "message": "성공", "data": [ { "categoryId": "ITE", "categoryName": "IT", "subCategories": [ { "subCategoryId": "ITE001", "subCategoryName": "인터넷/컴퓨터" }, { "subCategoryId": "ITE002", "subCategoryName": "정보통신/SW" }, ...... ]}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/categories" \ -H "accept: */*" \ -H "apiId: apiId... " \ -H "apiSecret: SK.Abkdls... " \ -H "Authorization: Bearer {token}"3.4. 브랜드 등록
Section titled “3.4. 브랜드 등록”기능 설명: 새로운 RCS 브랜드를 등록합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand HTTP/1.1Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| apiId | String | ● | RCS Biz Center에 가입시 등록한 ID 입니다. | 최대 20자 |
| apiSecret | String | ● | RCS Biz Center에 가입시 발급된 clientSecret 입니다. | 최대 18자 |
Request Body
Section titled “Request Body”| 필드명 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| regBrand | Object | ● | |
| mainMdn | String | ● | 브랜드 대표 발신번호. 입력된 번호는 chatbots에 포함되어 있어야 합니다. |
| profileImgFilePath | String | ● | 브랜드 프로필 이미지경로 |
| bgImgFilePath | String | - | 브랜드 백그라운드 이미지경로 |
| certiFilePath | String | - | 통신서비스이용증명원 파일경로 |
| chatbots | Array | ● | 등록할 챗봇(발신번호) 정보 |
regBrand 객체
Section titled “regBrand 객체”| 필드명 | 타입 | 필수 | 설명 | 크기 |
|---|---|---|---|---|
| name | String | ● | 브랜드 이름 | 최대 20자 |
| description | String | ● | 브랜드 설명 | 최대 150자 |
| tel | String | ● | 브랜드 전화번호 | 최대 12자 |
| menus | Object | - | 최대 menu는 3개 등록 가능합니다. 브랜드 홈에는 chat이 기본 등록되어 최대 4개 표시됩니다. | |
| categoryId | String | ● | 카테고리 ID | |
| subCategoryId | String | ● | 하위 카테고리 ID | |
| categoryOpt | String | - | 검색용 키워드 | |
| zipCode | String | - | 우편번호 | |
| roadAddress | String | - | 도로명 주소 | |
| detailAddress | String | - | 상세 주소 | |
| String | - | 이메일주소 | ||
| webSiteUrl | String | - | 홈페이지 주소 |
menus 객체
Section titled “menus 객체”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| buttonType | String | - | 챗봇 버튼타입 | 최대 20자 |
| weblink | String | - | URL은 http:// 또는 https:// 로 시작하여야 합니다. | 최대 128자 |
chatbots 객체
Section titled “chatbots 객체”| 필드명 | 타입 | 필수 | 설명 | 크기 |
|---|---|---|---|---|
| mdn | String | ● | 등록할 발신번호 | |
| rcsReply | String | ● | SMS MO 수신 0, RCS Postback 수신 1 | 1자 |
| subTitle | String | ● | 챗봇 이름 | |
| service | String | ● | A2P/CHAT 서비스 유형 | - |
| display | String | - | 챗봇 전시 설정값 default 01, ‘00’ : 브랜드채널 노출,브랜드검색 불허,브랜드홈 비전시 | 2자 |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": { "brandId": "BR.newBrand123" }}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X POST "https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand" \ -H "accept: */*" \ -H "apiId: apiId... " \ -H "apiSecret: SK.Abkdls... " \ -H "Authorization: Bearer {token}" -d "{ "regBrand": { "name": "브랜드명", "description": "브랜드설명", "tel": "전화번호", "menus": [ { "buttonType": "메뉴 버튼 타입", "weblink": "http://www.naver.com" } ], "categoryId": "카테고리 id", "subCategoryId": "하위카테고리 id", "categoryOpt": "검색키워드", "zipCode": "우편번호", "roadAddress": "도로명주소", "detailAddress": "상세주소", "email": "메일주소", "webSiteUrl": "회사 웹사이트" }, "mainMdn": "브랜드 대표 발신번호", "profileImgFilePath": "브랜드 프로필 이미지경로", "bgImgFilePath": "브랜드 백그라운드 이미지경로", "certiFilePath": "통신서비스이용증명원 파일경로", "chatbots": [ { "mdn": "발신번호", "rcsReply": "0/1 SMS MO 수신 0, RCS Postback 수신 1", "subTitle": "챗봇이름", "service": "A2P/CHAT 서비스 유형", "display": "01" } ]}'3.5. 브랜드 수정
Section titled “3.5. 브랜드 수정”기능 설명: 기존 RCS 브랜드 정보를 수정합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”PUT https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId} HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| brandId | String | ● | 브랜드 ID |
Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| apiId | String | ● | RCS Biz Center에 가입시 등록한 ID 입니다. | 최대 20자 |
| apiSecret | String | ● | RCS Biz Center에 가입시 발급된 clientSecret 입니다. | 최대 18자 |
Request Body
Section titled “Request Body”| 필드명 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| regBrand | Object | ● | |
| mainMdn | String | ● | 브랜드 대표 발신번호. 입력된 번호는 chatbots에 포함되어 있어야 합니다. |
| profileImgFilePath | String | ● | 브랜드 프로필 이미지경로. |
| bgImgFilePath | String | - | 브랜드 백그라운드 이미지경로. |
regBrand 객체
Section titled “regBrand 객체”| 필드명 | 타입 | 필수 | 설명 | 크기 |
|---|---|---|---|---|
| name | String | ● | 브랜드 이름 | 최대 20자 |
| description | String | ● | 브랜드 설명 | 최대 150자 |
| tel | String | ● | 브랜드 전화번호 | 최대 12자 |
| menus | Object | - | 최대 menu는 3개 등록 가능합니다. 브랜드 홈에는 chat이 기본 등록되어 최대 4개 표시됩니다. | |
| categoryId | String | ● | 카테고리 ID | |
| subCategoryId | String | ● | 하위 카테고리 ID | |
| categoryOpt | String | - | 검색용 키워드 | |
| zipCode | String | - | 우편번호 | |
| roadAddress | String | - | 도로명 주소 | |
| detailAddress | String | - | 상세 주소 | |
| String | - | 이메일주소 | ||
| webSiteUrl | String | - | 홈페이지 주소 |
regBrand > menus 객체
Section titled “regBrand > menus 객체”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| buttonType | String | - | 챗봇 버튼타입 | 최대 20자 |
| weblink | String | - | URL은 http:// 또는 https:// 로 시작하여야 합니다. | 최대 128자 |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "OK"}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X PUT "https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/BR.A...G" \ -H "accept: */*" \ -H "apiId: apiId... " \ -H "apiSecret: SK.Abkdls... " \ -H "Authorization: Bearer {token}" -d "{ "regBrand": { "name": "브랜드명", "description": "브랜드설명", "tel": "전화번호", "menus": [ { "buttonType": "메뉴 버튼 타입", "weblink": "http://www.naver.com" } ], "categoryId": "카테고리 id", "subCategoryId": "하위카테고리 id", "categoryOpt": "검색키워드", "zipCode": "우편번호", "roadAddress": "도로명주소", "detailAddress": "상세주소", "email": "메일주소", "webSiteUrl": "회사 웹사이트" }, "mainMdn": "브랜드 대표 발신번호", "profileImgFilePath": "브랜드 프로필 이미지경로", "bgImgFilePath": "브랜드 백그라운드 이미지경로"}'3.6. 브랜드 삭제
Section titled “3.6. 브랜드 삭제”기능 설명: RCS 브랜드를 삭제합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”DELETE https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId} HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 | 설명 |
|---|---|---|---|
| brandId | String | ● | 브랜드 ID |
Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| apiId | String | ● | RCS Biz Center에 가입시 등록한 ID 입니다. | 최대 20자 |
| apiSecret | String | ● | RCS Biz Center에 가입시 발급된 clientSecret 입니다. | 최대 18자 |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공"}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X DELETE "https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/BR.x...y" \ -H "accept: */*" \ -H "apiId: apiId... " \ -H "apiSecret: SK.Abkdls... " \ -H "Authorization: Bearer {token}"4. 챗봇 API
Section titled “4. 챗봇 API”4.1. 챗봇 리스트 조회
Section titled “4.1. 챗봇 리스트 조회”기능 설명: 브랜드 내에 등록된 챗봇 리스트 조회합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/chatbot HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandId | String | ● | 브랜드ID | 최대 13자 |
Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| brandKey | String | ● | 브랜드 Key |
Query Parameter
Section titled “Query Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| offset | String | ● | 시작 offset 번호(default: 0) 입니다. | |
| limit | String | ● | 조회 최대 건수(default: 100, maximum: 1000) 입니다. |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": { "result": [ { "chatbotId": "0310010002", "brandId": "BR.q...5", "isMainNum": "Y", "subNum": "02-123-4567", "subTitle": "고객센터", "service": "a2p", "display": "01", "approvalResult": "승인", "registerDate": "2023-05-15 14:30:45", "approvalDate": "2023-05-16 09:22:10", "updateDate": "2023-05-15 14:30:45", "registerId": "user123", "updateId": "user123" } ], "pagination": { "total": 1, "offset": 0, "limit": 100 } }}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/BR.x...y/chatbot?offset=0&limit=100" \ -H "accept: */*" \ -H "brandKey: BK.4.....4" \ -H "Authorization: Bearer {token}"4.2. 챗봇 상세 조회
Section titled “4.2. 챗봇 상세 조회”기능 설명: 지정된 브랜드에 챗봇(발신번호)을 등록합니다. 챗봇 등록시 브랜드포털 관리자의 승인 후 사용이 가능합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/chatbot/{chatbotId} HTTP/1.1Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandKey | String | ● | 브랜드 Key | 최대 18자 |
Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandId | String | ● | 브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다. | 최대 13자 |
| chatbotId | String | ● | 챗봇ID Path Parameter 입니다. |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": [ { "groupId": "GR12345", "chatbotId": "0310010002", "brandId": "BR.q...5", "subNum": "0310010003", "isMainNum": true, "subTitle": "고객센터", "service": "a2p", "display": "01", "approvalResult": "승인", "registerDate": "2023-05-15 14:30:45", "approvalDate": "2023-05-16 09:22:10", "updateDate": "2023-05-15 14:30:45", "registerId": "user123", "updateId": "user123", "mediaUrl": {}, "approvalReason": "", "status": "active", "rcsReply": "1", "searchWeight": "0", "webhook": "", "botTcPage": "" } ], "meta": {}}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/BR.x...y/chatbot/0...8" \ -H "accept: */*" \ -H "brandKey: BK.4.....4" \ -H "Authorization: Bearer {token}"4.3. 챗봇 등록 요청
Section titled “4.3. 챗봇 등록 요청”기능 설명: 지정된 브랜드에 챗봇(발신번호)을 등록합니다. 챗봇 등록시 브랜드포털 관리자의 승인 후 사용이 가능합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/chatbot HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandId | String | ● | 브랜드ID | 최대 13자 |
Request Body
Section titled “Request Body”| 필드명 | 타입 | 필수 | 설명 | 크기 |
|---|---|---|---|---|
| subNumCertificate | String | ● | 통신서비스이용증명원 파일경로 | 최대 20MB |
| chatbots | Object | ● | 브랜드 대표 발신번호. 입력된 번호는 chatbots에 포함되어 있어야 합니다. | - |
chatbots 객체
Section titled “chatbots 객체”| 필드명 | 타입 | 필수 | 설명 | 크기 |
|---|---|---|---|---|
| mdn | String | ● | 등록할 발신번호 | 최대 40자 |
| rcsReply | String | ● | SMS MO 수신 0, RCS Postback 수신 1 | 1자 |
| subTitle | String | ● | 챗봇 이름 | 최대 20자 |
| service | String | ● | A2P/CHAT 서비스 유형 | 최대 4자 |
| display | String | - | 챗봇 전시 설정값 default 01, ‘00’ : 브랜드채널 노출,브랜드검색 불허,브랜드홈 비전시 | 2자 |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": [ { "groupId": "string", "chatbotId": "string", "brandId": "string", "subNum": "string", "isMainNum": "string", "subTitle": "string", "service": "string", "display": "string", "approvalResult": "string", "registerDate": "string", "approvalDate": "string", "updateDate": "string", "registerId": "string", "updateId": "string" } ], "meta": {}}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X POST "https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/BR.x...y/chatbot" \ -H "accept: */*" \ -H "Authorization: Bearer {token}" -d "{ "subNumCertificate": "/efs/file/console/2....s.jpg", "chatbots": [ { "mdn": "1...4", "rcsReply": "1", "subTitle": "챗봇이름", "service": "a2p", "display": "01" } ]}'4.4. 챗봇 수정 요청
Section titled “4.4. 챗봇 수정 요청”기능 설명: 지정된 브랜드에 챗봇의 정보를 업데이트합니다. 챗봇의 업데이트는 승인상태에 따라 처리여부가 결정됩니다
1) 요청 (Request)
Section titled “1) 요청 (Request)”PUT https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/chatbot/{chatbotId} HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandId | String | ● | 브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다. | 최대 13자 |
| chatbotId | String | ● | 챗봇ID Path Parameter 입니다. |
Request Body
Section titled “Request Body”| 필드명 | 타입 | 필수 | 설명 | 크기 |
|---|---|---|---|---|
| subNumCertificate | Object | ● | 통신서비스이용증명원 파일경로 | 최대 20MB |
| chatbots | String | ● | 브랜드 대표 발신번호. 입력된 번호는 chatbots에 포함되어 있어야 합니다. | - |
chatbots 객체
Section titled “chatbots 객체”| 필드명 | 타입 | 필수 | 설명 | 크기 |
|---|---|---|---|---|
| mdn | String | ● | 등록할 발신번호 | 최대 40자 |
| rcsReply | String | ● | SMS MO 수신 0, RCS Postback 수신 1 | 1자 |
| subTitle | String | ● | 챗봇 이름 | 최대 20자 |
| service | String | ● | A2P/CHAT 서비스 유형 | 최대 4자 |
| display | String | - | 챗봇 전시 설정값 default 01, ‘00’ : 브랜드채널 노출,브랜드검색 불허,브랜드홈 비전시 | 2자 |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": [ { "groupId": "GR12345", "chatbotId": "0310010002", "brandId": "BR.q...5", "subNum": "0310010003", "isMainNum": true, "subTitle": "고객센터", "service": "a2p", "display": "01", "approvalResult": "승인", "registerDate": "2023-05-15 14:30:45", "approvalDate": "2023-05-16 09:22:10", "updateDate": "2023-05-15 14:30:45", "registerId": "user123", "updateId": "user123", "mediaUrl": {}, "approvalReason": "", "status": "active", "rcsReply": "1", "searchWeight": "0", "webhook": "", "botTcPage": "" } ], "meta": {}}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X PUT "https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/BR.x...y/chatbot/1...5" \ -H "accept: */*" \ -H "Authorization: Bearer {token}" -d "{ "subNumCertificate": "/efs/file/console/2....s.jpg", "chatbots": [ { "mdn": "1...4", "rcsReply": "1", "subTitle": "챗봇이름", "service": "a2p", "display": "01" } ]}'4.5. 챗봇 삭제 요청
Section titled “4.5. 챗봇 삭제 요청”기능 설명: 해당 챗봇을 삭제합니다. 챗봇의 삭제는 승인상태에 따라 처리 여부가 결정됩니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”DELETE https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/chatbot/{chatbotId} HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandId | String | ● | 브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다. | 최대 13자 |
| chatbotId | String | ● | 챗봇ID Path Parameter 입니다. |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": {}}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X DELETE "https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/BR.x...y/chatbot/1...5" \ -H "accept: */*" \ -H "Authorization: Bearer {token}"4.6. 대화방ID 등록 가능 여부 조회
Section titled “4.6. 대화방ID 등록 가능 여부 조회”기능 설명: 대화방ID 등록 가능 여부를 조회 합니다. 등록 가능한 경우 200 OK 응답으로 리턴되며, 대화방ID 형식 부적합, 이미 등록된 대화방ID 등 등록이 불가능한 경우 400 Error 리턴됩니다
1) 요청 (Request)
Section titled “1) 요청 (Request)”GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/usableQuery/chatbotId/{chatbotId} HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| chatbotId | String | ● | 챗봇ID Path Parameter 입니다. |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": { "httpStatus": "OK", "status": "200", "code": "20000000", "error": null, "desc": "registration available", "result": { "chatbotId": "11...47" } }}{ "code": "21399", "message": "RCS Biz Center 처리 실패", "data": { "code": "64348", "message": "1....3 is already registered." }}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/rcs/v1/usableQuery/chatbotId/1...5" \ -H "accept: */*" \ -H "Authorization: Bearer {token}"5. 템플릿 API
Section titled “5. 템플릿 API”5.1. 템플릿 양식 목록 조회
Section titled “5.1. 템플릿 양식 목록 조회”기능 설명: 템플릿 양식 목록을 조회합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/messagebase/messagebaseform HTTP/1.1Query Parameter
Section titled “Query Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| offset | String | ● | 시작 offset 번호(default: 0) 입니다. | |
| limit | String | ● | 조회 최대 건수(default: 100, maximum: 1000) 입니다. |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": { "result": [ { "messagebaseformId": "CLT00004", "formName": "로고 타이틀 스타일", "cardType": "descriptionNew", "bizCondition": [], "bizCategory": null, "bizService": null, "registerDate": "2025-04-16T10:08:30.000+09", "updateDate": "2025-05-28T10:30:25.000+09" }, { "messagebaseformId": "CLL00006", "formName": "LMS 템플릿 명세서C형", "cardType": "descriptionNew", "bizCondition": [], "bizCategory": null, "bizService": null, "registerDate": "2024-09-23T09:12:46.000+09", "updateDate": "2025-05-28T10:31:31.000+09" }, .... ]}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/messagebase/messagebaseform?offset=0&limit=100" \ -H "accept: */*" \ -H "Authorization: Bearer {token}"5.2. 템플릿 유형 상세 조회
Section titled “5.2. 템플릿 유형 상세 조회”기능 설명: 템플릿 유형의 상세 내용을 조회합니다. formattedString을 이용하여 원하는 브랜드용 템플릿을 작성할 수 있습니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/messagebase/messagebaseform/{messagebaseformId} HTTP/1.1Query Parameter
Section titled “Query Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| offset | String | ● | 시작 offset 번호(default: 0) 입니다. | |
| limit | String | ● | 조회 최대 건수(default: 100, maximum: 1000) 입니다. |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": [ { "messagebaseformId": "FF005C", "formName": "명세서 C", "cardType": "cell", "bizCondition": [ "all" ], "bizCategory": "금융", "bizService": "명세서", "registerDate": "2021-04-19T11:09:11.000+09", "updateDate": "2023-10-27T17:32:03.000+09", "mediaUrl": [ { "fileId": "LT-messagebase.common-qE1mwe", "fileName": "명세서.png", "url": "https://file-qa.rcsbizcenter.com/form/messagebase.common/LT-messagebase.common-qE1mwe_1.png", "typeName": "icon" } ], "productCode": "tmplt", "spec": "openrichcard", "guideInfo": { ...... }}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/messagebaseform/....." \ -H "accept: */*" \ -H "Authorization: Bearer {token}"5.3. 이통사 기본 템플릿 목록 조회
Section titled “5.3. 이통사 기본 템플릿 목록 조회”기능 설명: 이통사가 기본 제공하는 템플릿을 조회합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/messagebase/common HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| messagebaseformId | String | ● | 템플릿 유형 ID |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": { "result": [ { "groupId": null, "messagebaseId": "OL00000003", "tmpltName": "문단형", "messagebaseformId": "OL00000003", "brandId": "common", "status": "ready", "approvalResult": "승인", "approvalReason": null, "registerDate": "2024-11-29T15:24:00.000+09", "approvalDate": "2024-11-29T15:24:03.000+09", "updateDate": "2024-11-29T15:24:00.000+09", "registerId": "leekmstg", "updateId": null }, { "groupId": null, "messagebaseId": "OL00000002", "tmpltName": "기본형 타이틀 강조", "messagebaseformId": "OL00000002", "brandId": "common", "status": "ready", "approvalResult": "승인", "approvalReason": null, "registerDate": "2024-07-10T14:32:52.000+09", "approvalDate": "2024-07-10T14:32:53.000+09", "updateDate": "2024-07-10T14:32:52.000+09", "registerId": "leekmstg", "updateId": null }, .... }3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/messagebase/common?offset=0&limit=100" \ -H "accept: */*" \ -H "Authorization: Bearer {token}"5.4. 이통사 기본 템플릿 상세 조회
Section titled “5.4. 이통사 기본 템플릿 상세 조회”기능 설명: 템플릿 이통사가 기본 제공하는 리치카드 별 상세 내용을 조회합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/messagebase/common/{messagebaseId} HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| messagebaseformId | String | ● | 템플릿 유형 ID |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": [ { "groupId": null, "messagebaseId": "CMwMhM0300", "tmpltName": "슬라이드형(Medium,3장)", "messagebaseformId": "CMwMhM0300", "brandId": "common", "status": "ready", "approvalResult": "승인", "approvalReason": "승인완료", "registerDate": "2019-11-08T19:17:24.000+09", "approvalDate": "2020-11-06T13:09:09.000+09", "updateDate": "2020-04-08T12:32:01.000+09", "registerId": "smooncho", "updateId": "smooncho", "productCode": "mms", "spec": "richcard", "cardType": "carousel medium", "agencyId": null, "inputText": null, "attribute": null, "guideInfo": { "maxLineCount": 4, "maxDisplayText": 13, "maxDescriptionSize": 60, "imageWidth": "696", "imageHeight": "504", "detailInfo": { "summary": "모든 RCS A2P 대상 단말에서 메시지가 잘려 보이지 않을 최대 보장 description 라인 수에 대한 가이드 정보입니다.", "charactersPerLine": { "title": 13, "description": 14, "buttonName": 13 }, "combinations": [ { "condition": { "mediaPhase": null, "numberOfLinesOnTitle": 0, "numberOfButtons": 0 }, "numberOfLinesOnDescription": 28 }, .... }3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/messagebase/common/....." \ -H "accept: */*" \ -H "Authorization: Bearer {token}"템플릿 리스트 조회
Section titled “템플릿 리스트 조회”기능 설명: 브랜드 내에 등록된 메시지베이스 리스트 조회합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/messagebase HTTP/1.1Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandKey | String | ● | 브랜드 Key | 최대 18자 |
Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandId | String | ● | 브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다. | 최대 13자 |
Query Parameter
Section titled “Query Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| offset | String | ● | 시작 offset 번호(default: 0) 입니다. | |
| limit | String | ● | 조회 최대 건수(default: 100, maximum: 1000) 입니다. |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "100000", "message": "성공", "data": { "result": [ { "groupId": "그룹ID", "messagebaseId": "메시지베이스ID", "tmpltName": "템플릿명", "messagebaseformId": "템플릿양식ID", "brandId": "브랜드ID", "status": "상태", "approvalResult": "승인결과", "approvalReason": "승인사유", "registerDate": "등록일시", "approvalDate": "승인일시", "updateDate": "수정일시", "registerId": "등록자ID", "updateId": "수정자ID" }, { "groupId": null, "messagebaseId": "UBR.q...n", "tmpltName": "test", "messagebaseformId": "CC001D", "brandId": "BR.q...5", "status": "ready", "approvalResult": "승인대기", "approvalReason": null, "registerDate": "2021-09-07T16:29:23.000+09", "approvalDate": null, "updateDate": "2021-09-07T16:29:23.000+09", "registerId": "등록ID", "updateId": null }, { "groupId": null, "messagebaseId": "UBR.q...0F", "tmpltName": "test02", "messagebaseformId": "GG000F", "brandId": "BR.q...5", "status": "ready", "approvalResult": "승인", "approvalReason": "승인완료", "registerDate": "2021-06-09T14:01:06.000+09", "approvalDate": "2021-06-09T17:00:07.000+09", "updateDate": "2021-06-09T14:01:06.000+09", "registerId": "등록ID", "updateId": "등록ID" } ], "pagination": { "total": 2, "offset": 0, "limit": 100 } }}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/BR.q...5/messagebase?offset=0&limit=100" \ -H "accept: */*" \ -H "brandKey: BK.z...D " \ -H "Authorization: Bearer {token}"5.6. 템플릿 상세 조회
Section titled “5.6. 템플릿 상세 조회”기능 설명: 브랜드 내에 등록된 메시지베이스 상세 조회합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/messagebase/{messagebaseId} HTTP/1.1Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandKey | String | ● | 브랜드 Key | 최대 18자 |
Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandId | String | ● | 브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다. | 최대 13자 |
| messagebaseId | String | ● | 메시지베이스ID Path Parameter 입니다. | - |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "100000", "message": "성공", "data": [ { "groupId": null, "messagebaseId": "UBR.q...n", "tmpltName": "test", "messagebaseformId": "CC001D", "brandId": "BR.q...5", "status": "ready", "approvalResult": "승인", "approvalReason": null, "registerDate": "2021-09-07T16:29:23.000+09", "approvalDate": null, "updateDate": "2021-09-07T16:29:23.000+09", "registerId": "등록자ID", "updateId": null, "productCode": "tmplt", "spec": "openrichcard", "cardType": "description", "agencyId": null, "inputText": "test", "attribute": [ "주점", "유통/커머스", "출고" ], "guideInfo": { "maxLineCount": 0, "maxDisplayText": 17, "maxDescriptionSize": 90, "imageWidth": "0", "imageHeight": "0", "detailInfo": null }, "policyInfo": { "cardCount": 1, "maxMediaSize": 1048576, "maxTitleSize": 0, "maxButtonCount": 2, "maxDescriptionSize": 90, "adBodyAllowed": true, "buttonsAllowed": false, "adHeaderAllowed": false }, "params": [ { "param": "description", "isMandatory": true, "type": "String", "contentType": "description", "strSize": -1, "fileSize": null, "strRegx": "^(test)$", "verification": [ "test" ], "imageWidth": null, "imageHeight": null, "couplingId": null, "inputText": null, "relationId": null } ], "formattedString": { "RCSMessage": { "openrichcardMessage": { "layout": { "orientation": "vertical", "widget": "LinearLayout", "children": [ { "widget": "ImageView", "mediaUrl": "maapfile://LT-20....Rg", "width": "content", "marginBottom": "8dp", "paddingTop": "16dp", "height": "content" }, { "orientation": "vertical", "widget": "LinearLayout", "paddingBottom": "8dp", "children": [ { "widget": "TextView", "textSize": "17dp", "paddingBottom": "8dp", "textAlignment": "textStart", "width": "content", "text": "{{description}}", "textColor": "#404040", "height": "content" } ], "width": "match", "height": "content" } ], "background": "#ffffff", "paddingRight": "16dp", "width": "284dp", "paddingLeft": "16dp", "height": "content" }, "suggestions": [], "zoomAllowed": "true", "card": "open_rich_card" }, "trafficType": "advertisement" } } } ]}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/BR.q...5/messagebase/UBR.q...n" \ -H "accept: */*" \ -H "brandKey: BK.z...D" \ -H "Authorization: Bearer {token}"5.7. 템플릿 등록 요청
Section titled “5.7. 템플릿 등록 요청”기능 설명: Messagebase를 등록합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”POST https://mnt-api.msghub.uplus.co.kr/rcs/v1.1/brand/{brandId}/messagebase HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandId | String | ● | 브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다. | 최대 13자 |
Request Body
Section titled “Request Body”| Name | Type | 필수 | 설명 | 크기 |
|---|---|---|---|---|
| messagebaseformId | String | ● | 템플릿 양식 ID | 최대 10자 |
| custTmpltId | String | ● | 사용자 지정 템플릿ID로 영문/숫자 25자 이내만 가능 | 최대 25자 |
| tmpltName | String | ● | 템플릿명 | 최대 40자 |
| brandId | String | ● | 브랜드 ID | 최대 13자 |
| agencyId | String | - | 대행사 ID | 최대 20자 |
| formattedString | Object | ● | 오픈리치카드를 구성하는 Widget 의 속정 정보 객체입니다. |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "100000", "message": "성공"}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”이미지 강조형
Section titled “이미지 강조형”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1.1/BR.vC...h/messagebase" \ -H "accept: */*" \ -H "Authorization: Bearer {token}" -d "{ "messagebaseformId": "ITHIMS", "tmpltName": "템플릿명", "brandId": "BR.W.....D", "custTmpltId": "T.....i", "agencyId": "uplus", "body": [ { "param": "description", "value": "{{고객}}님 RCS 테스트 발송입니다. " }, { "param": "title", "value": "제목입력" }, { "param": "media", "value": "maapfile://LT-BR.W.....2" } ], "buttons": [ { "suggestions": [ { "action": { "displayText": "URL 링크 버튼명", "postback": { "data": "set_by_chatbot_open_url" }, "urlAction": { "openUrl": { "url": "https://www.naver.com/" } } } } ] } ]}'썸네일 세로형
Section titled “썸네일 세로형”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1.1/BR.vC...h/messagebase" \ -H "accept: */*" \ -H "Authorization: Bearer {token}" -d "{ "brandId": "BR.v....h", "messagebaseformId": "ITTBNV", "custTmpltId": "Test0001", "tmpltName": "썸네일 세로형", "agencyId": "uplus", "body": [ { "param": "media", "value": "maapfile://thumbMain" }, { "param": "title", "value": "제목" }, { "param": "description", "value": "{{고객}}님 RCS 발송입니다." }, { "param": "subDesc1", "value": "썸네일내용1" }, { "param": "subDesc2", "value": "썸네일내용2" }, { "param": "subDesc3", "value": "썸네일내용3" }, { "param": "subMedia1", "value": "maapfile://thumb1" }, { "param": "subMedia2", "value": "maapfile://thumb2" }, { "param": "subMedia3", "value": "maapfile://thumb3" } ], "buttons": [ ] -- 하단의 버튼 유형별 json을 참고해주세요.}'썸네일 가로형
Section titled “썸네일 가로형”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1.1/BR.vC...h/messagebase" \ -H "accept: */*" \ -H "Authorization: Bearer {token}" -d "{ "brandId": "BR.v....h", "messagebaseformId": "ITTBNH", "custTmpltId": "Test0001", "tmpltName": "썸네일 가로형", "agencyId": "uplus", "body": [ { "param": "media", "value": "maapfile://thumbMain" }, { "param": "title", "value": "제목" }, { "param": "description", "value": "{{고객}}님 RCS 발송입니다." }, { "param": "subMedia1", "value": "maapfile://thumb1" }, { "param": "subMedia2", "value": "maapfile://thumb2" }, { "param": "subMedia3", "value": "maapfile://thumb3" } ], "buttons": [ ] -- 하단의 버튼 유형별 json을 참고해주세요.}'이미지&타이틀 강조형
Section titled “이미지&타이틀 강조형”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1.1/BR.vC...h/messagebase" \ -H "accept: */*" \ -H "Authorization: Bearer {token}" -d "{ "brandId": "BR.v....h", "messagebaseformId": "ITHITS", -- ITHITS(이미지 1:1) ITHITV(이미지 3:4) "custTmpltId": "Test0001", "tmpltName": "이미지강조형", "agencyId": "uplus", "body": [ { "param": "media", "value": "maapfile://thumbMain" }, { "param": "title", "value": "제목" }, { "param": "subTitle1", "value": "" }, { "param": "subTitle2", "value": "" }, { "param": "subTitle3", "value": "" }, { "param": "subDesc1", "value": "" }, { "param": "subDesc2", "value": "" }, { "param": "subDesc3", "value": "" } ], "buttons": [ ] -- 하단의 버튼 유형별 json을 참고해주세요.}'curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1.1/BR.vC...h/messagebase" \ -H "accept: */*" \ -H "Authorization: Bearer {token}" -d "{ "brandId": "BR.v....h", "messagebaseformId": "ITSNSH", -- ITSNSH(중간버튼형) ITSNSS(하단버튼형) "custTmpltId": "Test0001", "tmpltName": "SNS형", "agencyId": "uplus", "body": [ { "param": "media", "value": "maapfile://Main" }, { "param": "title", "value": "제목" }, { "param": "description", "value": "{{고객}}님 RCS 발송입니다." } ], "buttons": [ ] -- 하단의 버튼 유형별 json을 참고해주세요.}'curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1.1/BR.vC...h/messagebase" \ -H "accept: */*" \ -H "Authorization: Bearer {token}" -d "{ "brandId": "BR.v....h", "messagebaseformId": "ITCRM2", -- 슬라이드갯수에 따라 ITCRM2 ~ ITCRM6 "custTmpltId": "Test0001", "tmpltName": "슬라이드형", "agencyId": "uplus", "body": [ { "param": "media1", "value": "maapfile://...media1" }, { "param": "title1", "value": "제목" }, { "param": "description1", "value": "슬라이드1 내용" }, { "param": "media2", "value": "maapfile://...media2" }, { "param": "title2", "value": "제목" }, { "param": "description2", "value": "슬라이드2 내용" }, { "param": "media3", "value": "maapfile://...media3" }, { "param": "title3", "value": "제목" }, { "param": "description3", "value": "슬라이드3 내용" }, { "param": "media4", "value": "maapfile://...media4" }, { "param": "title4", "value": "제목" }, { "param": "description4", "value": "슬라이드4 내용" }, { "param": "media5", "value": "maapfile://...media5" }, { "param": "title5", "value": "제목" }, { "param": "description5", "value": "슬라이드5 내용" }, { "param": "media6", "value": "maapfile://...media6" }, { "param": "title6", "value": "제목" }, { "param": "description6", "value": "슬라이드6 내용" } ], "buttons": [ ] -- 하단의 버튼 유형별 json을 참고해주세요.}'RCS 버튼 유형별 json 예시입니다.
URL링크 버튼
Section titled “URL링크 버튼” "buttons": [ { "suggestions": [ { "action": { "displayText": "상품 상세보기(버튼명)", "postback": { "data": "set_by_chatbot_open_url" }, "urlAction": { "openUrl": { "url": "https://example.com/product/123" } } } } ] } ]복사하기 버튼
Section titled “복사하기 버튼” "buttons": [ { "suggestions": [ { "action": { "displayText": "복사하기 버튼명", "clipboardAction": { "copyToClipboard": { "text": "복사할 내용" } }, "postback": { "data": "set_by_chatbot_copy_to_clipboard" } } } ] } ]전화걸기 버튼
Section titled “전화걸기 버튼” "buttons": [ { "suggestions": [ { "action": { "displayText": "전화걸기 버튼명", "postback": { "data": "set_by_chatbot_dial_phone_number" }, "dialerAction": { "dialPhoneNumber": { "phoneNumber": "01012341234" } } } } ] } ]일정추가 버튼
Section titled “일정추가 버튼” "buttons": [ { "suggestions": [ { "action": { "displayText": "일정추가 버튼명", "postback": { "data": "set_by_chatbot_create_calendar_event" }, "calendarAction": { "createCalendarEvent": { "description": "일정 내용", "startTime": "2025-07-09T00:00:00Z", "endTime": "2025-07-10T23:59:59Z", "title": "일정 제목" } } } } ] } ]지도(현재위치) 공유 버튼
Section titled “지도(현재위치) 공유 버튼” "buttons": [ { "suggestions": [ { "action": { "mapAction": { "requestLocationPush": {} }, "displayText": "현재위치 공유 버튼명", "postback": { "data": "set_by_chatbot_request_location_push" } } } ] } ]지도맵(좌표입력) 버튼
Section titled “지도맵(좌표입력) 버튼”"buttons": [ { "suggestions": [ { "action": { "mapAction": { "showLocation": { "fallbackUrl": "지도 APP 미작동시 대체할 URL", "location": { "latitude": "위도", "label": "지도 APP에 표시될 라벨", "longitude": "경도" } } }, "displayText": "지도 버튼명", "postback": { "data": "set_by_chatbot_show_location" } } } ] } ]지도(쿼리입력) 버튼
Section titled “지도(쿼리입력) 버튼” "buttons": [ { "suggestions": [ { "action": { "mapAction": { "showLocation": { "fallbackUrl": "지도 APP 미작동시 대체할 URL", "location": { "query": "지도 APP에서 검색할 구문" } } }, "displayText": "지도 버튼명", "postback": { "data": "set_by_chatbot_search_locations" } } } ] } ]5.8. 템플릿 수정 요청
Section titled “5.8. 템플릿 수정 요청”기능 설명: Messa요청base를 업데이트 합니다. 템플릿의 업데이트는 승인상태에 따라 처리 여부가 결정됩니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”PUT https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/messagebase/{messagebaseId} HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandId | String | ● | 브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다. | 최대 13자 |
| messagebaseId | String | ● | 메시지베이스ID Path Parameter 입니다. | - |
Request Body
Section titled “Request Body”| Name | Type | 필수 | 설명 | 크기 |
|---|---|---|---|---|
| messagebaseformId | String | ● | 템플릿 양식 ID | 최대 10자 |
| custTmpltId | String | ● | 사용자 지정 템플릿ID로 영문/숫자 25자 이내만 가능 | 최대 25자 |
| tmpltName | String | ● | 템플릿명 | 최대 40자 |
| brandId | String | ● | 브랜드 ID | 최대 13자 |
| agencyId | String | - | 대행사 ID | 최대 20자 |
| formattedString | Object | ● | 오픈리치카드를 구성하는 Widget 의 속정 정보 객체입니다. |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "100000", "message": "성공", "result": [ { "brandId": "BR.q...5", "brandName": "테스트 브랜드", "agencyId": "AG.123456", "approvalStatus": "approved", "chatbotDate": "2023-01-01T00:00:00Z", "messagebaseDate": "2023-01-01T00:00:00Z", "regDt": "2023-01-01T00:00:00Z", "updDt": "2023-01-01T00:00:00Z", "approvalDt": "2023-01-01T00:00:00Z" } ], "pagination": { "total": 1, "offset": 0, "limit": 100 }}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/BR.v...h/messagebase/UBR.v...c" \ -H "accept: */*" \ -H "Authorization: Bearer {token}" -d "{ "messagebaseformId": "EE001D", "custTmpltId": "TEST0001", "tmpltName": "TEST0001 수정", "brandId": "BR.v...h", "agencyId": "uplus", "formattedString": { "RCSMessage": { "trafficType": "advertisement", "openrichcardMessage": { "card": "open_rich_card", "layout": { "width": "284dp", "height": "content", "widget": "LinearLayout", "children": [ { "width": "content", "height": "content", "widget": "ImageView", "mediaUrl": "maapfile://LT-200820124159649-HpvY", "paddingTop": "16dp", "marginBottom": "8dp" } ], "background": "#ffffff", "orientation": "vertical", "paddingLeft": "16dp", "paddingRight": "16dp" }, "suggestions": [ { "action": { "postback": { "data": "set_by_chatbot_copy_to_clipboard" }, "displayText": "복사하기", "clipboardAction": { "copyToClipboard": { "text": "복사하기" } } } } ], "zoomAllowed": true } } }}"5.9. 템플릿 삭제 요청
Section titled “5.9. 템플릿 삭제 요청”기능 설명: 브랜드 내 지정된 템플릿을 삭제합니다. 템플릿의 삭제는 승인상태에 따라 처리 여부가 결정됩니다. 한번 삭제된 템플릿은 복원이 불가능하며 동일한 ID로 생성할 수 없습니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”DELETE https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/messagebase/{messagebaseId} HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandId | String | ● | 브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다. | 최대 13자 |
| messagebaseId | String | ● | 메시지베이스ID Path Parameter 입니다. | - |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공"}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/BR.n....h/messagebase/UBR.v.....4" \ -H "accept: */*" \ -H "Authorization: Bearer {token}"5.10. 템플릿 승인 요청 취소
Section titled “5.10. 템플릿 승인 요청 취소”기능 설명: 지정된 템플릿의 승인요청을 취소합니다. 각 상태별 취소 요청 동작은 다음과 같습니다.
승인대기 : 저장 상태로 변경
승인대기(수정) : 직전 승인 상태 및 데이터로 롤백
반려(수정) : 직전 승인 상태 및 데이터로 롤백
이외의 경우 에러 리턴
1) 요청 (Request)
Section titled “1) 요청 (Request)”PUT https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/messagebase/{messagebaseId}/cancel HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandId | String | ● | 브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다. | 최대 13자 |
| messagebaseId | String | ● | 메시지베이스ID Path Parameter 입니다. | - |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공"}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/BR.v...h/messagebase/UBR.vC....02/cancel" \ -H "accept: */*" \ -H "Authorization: Bearer {token}"6. 대행사 API
Section titled “6. 대행사 API”6.1. 대행사 하위 고객사 프로젝트 목록 조회
Section titled “6.1. 대행사 하위 고객사 프로젝트 목록 조회”기능 설명: 대행사가 계약된 고객사의 프로젝트 목록을 조회한다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/brand/project HTTP/1.1Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| apiId | String | ● | RCS Biz Center에 가입시 등록한 ID 입니다. | 최대 20자 |
| apiSecret | String | ● | RCS Biz Center에 가입시 발급된 clientSecret 입니다. | 최대 18자 |
Query Parameter
Section titled “Query Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| agencyId | String | ● | RCS Biz Center에 등록된 대행사 ID 입니다. | |
| regnos | Array | ● | 조회 대상 고객사의 사업자등록번호 목록 입니다. |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": { "result": [ { "corpId": "string", "corpRegNum": "string", "brandId": "string", "brandName": "string", "agencyId": "string", "contracts": [ "string" ], "registerDate": "string", "updateDate": "string", "brandDate": "string", "chatbotDate": "string", "messagebaseDate": "string" } ]}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/brand/project?agencyId=.....®nos=1.....1" \ -H "accept: */*" \ -H "apiId: ....." \ -H "apiSecret: ....." \ -H "Authorization: Bearer {token}"6.2. 대행사 하위 고객사 프로젝트 연결
Section titled “6.2. 대행사 하위 고객사 프로젝트 연결”기능 설명: 대행사가 계약된 고객사의 프로젝트 목록을 조회한다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/subCorp/subBrandProjectReg HTTP/1.1Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| apiId | String | ● | RCS Biz Center에 가입시 등록한 ID 입니다. | 최대 20자 |
| apiSecret | String | ● | RCS Biz Center에 가입시 발급된 clientSecret 입니다. | 최대 18자 |
Query Parameter
Section titled “Query Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| projectId | String | ● | 연결할 프로젝트ID | |
| corpId | String | ● | 연결할 회사ID | |
| userId | String | ● | 연결 등록자 ID | |
| subBrands | Array | ● | 연결할 브랜드 아이디 목록 |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공"}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/subCorp/subBrandProjectReg?projectId=D....L&corpId=A....A&userId=S....Q&subBrands=BR.F....O" \ -H "accept: */*" \ -H "apiId: ....." \ -H "apiSecret: ....." \ -H "Authorization: Bearer {token}"6.3. 대행사 하위 브랜드 조회
Section titled “6.3. 대행사 하위 브랜드 조회”기능 설명: 대행사가 계약된 브랜드를 기업 단위로 조회한다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/{agencyId}/corp/{corpRegNum}/brand HTTP/1.1Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| apiId | String | ● | RCS Biz Center에 가입시 등록한 ID 입니다. | 최대 20자 |
| apiSecret | String | ● | RCS Biz Center에 가입시 발급된 clientSecret 입니다. | 최대 18자 |
Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| agencyId | String | ● | RCS Biz Center에 등록된 대행사 ID 입니다. | |
| corpRegNum | String | ● | 대상 기업의 사업자등록번호(10자리) 입니다. |
Query Parameter
Section titled “Query Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| offset | String | ● | 시작 offset 번호(default: 0) 입니다. | |
| limit | String | ● | 조회 최대 건수(default: 100, maximum: 1000) 입니다. |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공" "data" :{ "result": [ { "corpId": "string", "corpRegNum": "string", "brandId": "string", "brandName": "string", "agencyId": "string", "contracts": [ "string" ], "registerDate": "string", "updateDate": "string", "brandDate": "string", "chatbotDate": "string", "messagebaseDate": "string" } ] }}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/a....k/corp/5....1/brand?offset=0&limit=100" \ -H "accept: */*" \ -H "apiId: ....." \ -H "apiSecret: ....." \ -H "Authorization: Bearer {token}"6.4. 대행사 하위 브랜드 상세 조회
Section titled “6.4. 대행사 하위 브랜드 상세 조회”기능 설명: 대행사 하위 브랜드 상세 정보를 조회한다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/{agencyId}/brand/{brandId} HTTP/1.1Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| apiId | String | ● | RCS Biz Center에 가입시 등록한 ID 입니다. | 최대 20자 |
| apiSecret | String | ● | RCS Biz Center에 가입시 발급된 clientSecret 입니다. | 최대 18자 |
Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| agencyId | String | ● | RCS Biz Center에 등록된 대행사 ID 입니다. | |
| brandId | String | ● | 브랜드ID 입니다. |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공" "data": [ { "categoryId": "string", "categoryName": "string", "subCategories": [ { "subCategoryId": "string", "subCategoryName": "string" } ], "updateDate": "string" } ], "meta": {}}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/a....k/brand/BR.a...5" \ -H "accept: */*" \ -H "apiId: ....." \ -H "apiSecret: ....." \ -H "Authorization: Bearer {token}"6.5. 대행사 하위고객 브랜드 수신 등록 목록 조회
Section titled “6.5. 대행사 하위고객 브랜드 수신 등록 목록 조회”기능 설명: 대행사 하위고객 브랜드 수신 등록 목록 조회
1) 요청 (Request)
Section titled “1) 요청 (Request)”POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/subCorp/brandRegList HTTP/1.1Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| apiId | String | ● | RCS Biz Center에 가입시 등록한 ID 입니다. | 최대 20자 |
| apiSecret | String | ● | RCS Biz Center에 가입시 발급된 clientSecret 입니다. | 최대 18자 |
Query Parameter
Section titled “Query Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| regno | String | ● | 사업자번호 | |
| brandId | String | - | 브랜드ID 입니다. |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공" "data": [ { "regno":"사업자번호", "brandId":"브랜드id", "regId":"등록자id", "regDt":"등록일자" } ]}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X POST "https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/subCorp/brandRegList?regno=2.....8&brandId=BR.5.....A3" \ -H "accept: */*" \ -H "apiId: ....." \ -H "apiSecret: ....." \ -H "Authorization: Bearer {token}"6.6. 대행사 하위고객 브랜드 수신 등록 설정/해제
Section titled “6.6. 대행사 하위고객 브랜드 수신 등록 설정/해제”기능 설명: 대행사 하위고객 브랜드 수신 등록을 설정하거나 해제합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/subCorp/brand HTTP/1.1Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| apiId | String | ● | RCS Biz Center에 가입시 등록한 ID 입니다. | 최대 20자 |
| apiSecret | String | ● | RCS Biz Center에 가입시 발급된 clientSecret 입니다. | 최대 18자 |
Query Parameter
Section titled “Query Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| confYn | String | ● | 수신 제외 브랜드 등록/삭제(Y : 등록, N : 삭제) | 1자 |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공" "data": { }}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X POST "https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/subCorp/brand?confYn=Y" \ -H "accept: */*" \ -H "apiId: ....." \ -H "apiSecret: ....." \ -H "Authorization: Bearer {token}"6.7. 대행사 하위고객 브랜드 수신 등록/제외
Section titled “6.7. 대행사 하위고객 브랜드 수신 등록/제외”기능 설명: 대행사 하위고객 브랜드 수신 등록을 설정하거나 해제합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/subCorp/brandReg HTTP/1.1Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| apiId | String | ● | RCS Biz Center에 가입시 등록한 ID 입니다. | 최대 20자 |
| apiSecret | String | ● | RCS Biz Center에 가입시 발급된 clientSecret 입니다. | 최대 18자 |
Query Parameter
Section titled “Query Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| subBrandsReg | String | ● | 수신 제외 브랜드 등록/삭제(Y : 등록, N : 삭제) | 1자 |
| subBrands | Array | ● | 하위브랜드 목록 |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공" "data": { }}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X POST "https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/subCorp/brandReg?subBrandsReg=Y&subBrands=BR.d...a" \ -H "accept: */*" \ -H "apiId: ....." \ -H "apiSecret: ....." \ -H "Authorization: Bearer {token}"6.8. 대행사 브랜드 동기화
Section titled “6.8. 대행사 브랜드 동기화”기능 설명: 대행사 브랜드, 메시지베이스, 챗봇 동기화 요청
1) 요청 (Request)
Section titled “1) 요청 (Request)”POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/brand/sync HTTP/1.1Headers
Section titled “Headers”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| apiId | String | ● | RCS Biz Center에 가입시 등록한 ID 입니다. | 최대 20자 |
| apiSecret | String | ● | RCS Biz Center에 가입시 발급된 clientSecret 입니다. | 최대 18자 |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공" "data": { }}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X POST "https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/brand/sync" \ -H "accept: */*" \ -H "apiId: ....." \ -H "apiSecret: ....." \ -H "Authorization: Bearer {token}"6.9. 대행사 양방향 청약 고객 목록 조회
Section titled “6.9. 대행사 양방향 청약 고객 목록 조회”1) 요청 (Request)
Section titled “1) 요청 (Request)”GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/bi/corpUnitList HTTP/1.12) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공" "data": [ { "regNo": "사업자번호", "corpName": "회사명", "regDate": "등록일시" } ]}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/bi/corpUnitList" \ -H "accept: */*" \ -H "Authorization: Bearer {token}"6.10. 대행사 양방향 청약 고객 등록
Section titled “6.10. 대행사 양방향 청약 고객 등록”1) 요청 (Request)
Section titled “1) 요청 (Request)”POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/bi/corpUnit HTTP/1.1Request Body
Section titled “Request Body”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| regNo | String | ● | 사업자번호 | 최대 20자 |
| corpName | String | ● | 사업자명 | 최대 50자 |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": {}, "meta": {}}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X POST "https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/bi/corpUnit" \ -H "accept: */*" \ -H "Authorization: Bearer {token}"6.11. 대행사 양방향 청약 고객 삭제
Section titled “6.11. 대행사 양방향 청약 고객 삭제”1) 요청 (Request)
Section titled “1) 요청 (Request)”DELETE https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/bi/corpUnit/{regNo} HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| regNo | String | ● | 사업자번호 | 최대 20자 |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": {}, "meta": {}}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X DELETE "https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/bi/corpUnit/1.....9" \ -H "accept: */*" \ -H "Authorization: Bearer {token}"7. 고객반응 통계 API
Section titled “7. 고객반응 통계 API”7.1. 캠페인 메시지 발송/읽음확인 통계 조회
Section titled “7.1. 캠페인 메시지 발송/읽음확인 통계 조회”기능 설명: 동일 Group ID에 발송일 기준 3일간 (D+3) 집계됩니다. 단, 이통사별 발송 성공건수 100건 이상인 경우에 한해 집계됩니다. 통계 조회 기간은 데이터 존재 시 최근 1년 6개월 이내 기간 중 최대 31일까지 검색 가능합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/statQuery/message/{brandId} HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandId | String | ● | 브랜드ID | 최대 13자 |
Query Parameter
Section titled “Query Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandKey | String | ● | RCS Biz Center에서 브랜드 등록 시 자동 생성되는 Key | - |
| startDate | String | ● | 요청시작일자 | 20250501 |
| endDate | String | ● | 요청종료일자 | 20250530 |
| campaignId | String | ● | 발송 캠페인 구분 ID | - |
| chatbotId | String | - | 대화방ID | - |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": { "status": "200", "code": "20000000", "result": [ { "statDate": "통계시작날짜", "corpId": "rbc에 등록된 회사id", "corpRegNum": "사업자번호", "brandId": "브랜드id", "chatbotId": "대화방 id", "groupId": "발송 캠페인 구분id", "deliveredCount": 발송건수, "displayedCount": 읽음확인건수 } ] }}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X POST "https://mnt-api.msghub.uplus.co.kr/rcs/v1/statQuery/message/BR.xV...M?brandKey=BK.Y...5&startDate=20250601&endDate=20250630&campaignId=1...6&chatbotId=1...3" \ -H "accept: */*" \ -H "Authorization: Bearer {token}"7.2. 캠페인 메시지 버튼 클릭 통계 조회
Section titled “7.2. 캠페인 메시지 버튼 클릭 통계 조회”기능 설명: 동일 Group ID에 발송일 기준 3일간 (D+3) 집계됩니다. 단, 이통사별 발송 성공건수 100건 이상인 경우에 한해 집계됩니다. 통계 조회 기간은 데이터 존재 시 최근 1년 6개월 이내 기간 중 최대 31일까지 검색 가능합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/statQuery/messageButton/{brandId} HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandId | String | ● | 브랜드ID | 최대 13자 |
Query Parameter
Section titled “Query Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandKey | String | ● | RCS Biz Center에서 브랜드 등록 시 자동 생성되는 Key | - |
| startDate | String | ● | 요청시작일자 | 20250501 |
| endDate | String | ● | 요청종료일자 | 20250530 |
| campaignId | String | ● | 발송 캠페인 구분 ID | - |
| chatbotId | String | - | 대화방ID | - |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": { "status": "200", "code": "20000000", "result": [ { "statDate": "통계시작일", "corpId": "rbc 등록된 회사id", "corpRegNum": "사업자번호", "brandId": "브랜드id", "chatbotId": "대화방 id", "groupId": "발송 캠페인 구분 id", "buttonList": [ { "buttonType": "버튼 타입", "buttonName": "버튼명", "clickCount": 클릭수 } ] } ] }}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X POST "https://mnt-api.msghub.uplus.co.kr/rcs/v1/statQuery/message/BR.xV...M?brandKey=BK.Y...5&startDate=20250601&endDate=20250630&campaignId=1...6&chatbotId=1...3" \ -H "accept: */*" \ -H "Authorization: Bearer {token}"7.3. 대화방 메뉴 클릭 통계 조회
Section titled “7.3. 대화방 메뉴 클릭 통계 조회”기능 설명: 대화방별 1건 이상 사용자선택이 일어난 경우에 대해 집계됩니다. 통계 조회 기간은 데이터 존재 시 최근 1년 6개월 이내 기간 중 최대 31일까지 검색 가능합니다.
1) 요청 (Request)
Section titled “1) 요청 (Request)”POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/statQuery/persistentMenu/{brandId} HTTP/1.1Path Parameter
Section titled “Path Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandId | String | ● | 브랜드ID | 최대 13자 |
Query Parameter
Section titled “Query Parameter”| 필드명 | 타입 | 필수 여부 | 설명 | 크기 |
|---|---|---|---|---|
| brandKey | String | ● | RCS Biz Center에서 브랜드 등록 시 자동 생성되는 Key | - |
| startDate | String | ● | 요청시작일자 | 20250501 |
| endDate | String | ● | 요청종료일자 | 20250530 |
| chatbotId | String | - | 대화방ID | - |
2) 응답 (Response)
Section titled “2) 응답 (Response)”Response Body
Section titled “Response Body”{ "code": "10000", "message": "성공", "data": { "status": "200", "code": "20000000", "result": [ { "statDate": "통계시작일", "corpId": "rbc 등록된 회사id", "corpRegNum": "사업자번호", "brandId": "브랜드id", "chatbotId": "대화방 id", "menuList": [ { "postbackId": "menu1", "menuType": "메뉴 타입(action, reply, autoreply, menu)", "actionType": "메뉴 타입이 action인 경우 액션유형", "title": "메뉴명", "clickCount": 클릭수, "subList": [ { "postbackId": "submenu1", "menuType": "action", "actionType": "urlAction", "title": "제품 소개", "clickCount": 45, "subActionList": [ { "postbackId": "act1", "actionType": "urlAction", "title": "상세 보기", "clickCount": 22 } ] } ] } ] } ] }}3) 요청 예시 (Sample)
Section titled “3) 요청 예시 (Sample)”curl -X POST "https://mnt-api.msghub.uplus.co.kr/rcs/v1/statQuery/persistentMenu/BR.x...M?brandKey=BK.Y...5&startDate=20250601&endDate=20250630&chatbotId=1...3" \ -H "accept: */*" \ -H "Authorization: Bearer {token}"Appendix
Section titled “Appendix”상품별 이미지 첨부 가능 규격
Section titled “상품별 이미지 첨부 가능 규격”- RCS 공통
- 지원 형식: JPG, JPEG, PNG, BMP, GIF
- 파일 크기: 최대 1MB
- 이미지형(세로형)
- 사이즈: 568x336px (권장)
- 이미지형(이미지 강조)
- 사이즈: 900x900px 또는 900x1200px (필수)
- 썸네일형
- 이미지 사이즈: 900x560px (필수)
- 썸네일 이미지 사이즈: 300x300px (필수)
- SNS형
- 사이즈: 900x900px (필수)
- SNS형(중간버튼)
- 사이즈: 900x560px (필수)
- 슬라이드형(Small)
- 사이즈: 360x336px (권장) / 360x1620px (최대)
- 슬라이드형(Medium)
- 사이즈: 696x504px (권장) / 696x1620px (최대)