Skip to content

3.4 RCS


이 문서는 메시지허브 RCS API 사용법을 안내합니다. API는 브랜드 관리, 템플릿 관리 등의 기능을 제공합니다. 각 API의 기능, 요청 및 응답 형식, 파라미터, 예시 등을 포함하고 있습니다.

모든 API 요청에는 다음과 같은 공통 헤더 정보가 필요합니다.

헤더 이름타입필수설명
AuthorizationStringBearer 방식의 인증 토큰
Content-TypeStringapplication/json;charset=UTF-8

기능 설명: 고객사에 등록된 모든 RCS 브랜드 목록을 조회합니다.


GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand HTTP/1.1
필드명타입필수 여부설명크기
apiIdStringRCS Biz Center에 가입시 등록한 ID 입니다.최대 20자
apiSecretStringRCS Biz Center에 가입시 발급된 clientSecret 입니다.최대 18자
필드명타입필수 여부설명크기
offsetString시작 offset 번호(default: 0) 입니다.
limitString조회 최대 건수(default: 100, maximum: 1000) 입니다.

{
"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
}
}

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}"

기능 설명: 특정 브랜드 ID에 해당하는 브랜드의 상세 정보를 조회합니다.


GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId} HTTP/1.1
필드명타입필수 여부설명크기
apiIdStringRCS Biz Center에 가입시 등록한 ID 입니다.최대 20자
apiSecretStringRCS Biz Center에 가입시 발급된 clientSecret 입니다.최대 18자
필드명타입필수설명
brandIdString브랜드 ID

{
"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": "검수완료"
}
]
}

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}"

기능 설명: 브랜드 등록 시 사용 가능한 카테고리 목록을 조회합니다.


GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/categories HTTP/1.1
필드명타입필수 여부설명크기
apiIdStringRCS Biz Center에 가입시 등록한 ID 입니다.최대 20자
apiSecretStringRCS Biz Center에 가입시 발급된 clientSecret 입니다.최대 18자

NameType설명
codeString결과 코드
messageString결과 메시지
data[].categoryIdString카테고리 그룹 아이디
data[].categoryNameString카테고리 그룹 이름
data[].subCategoriesArray
data[].subCategories.subCategoryIdString하위 카테고리 아이디
data[].subCategories.subCategoryNameString하위 카테고리 이름
{
"code": "10000",
"message": "성공",
"data": [
{
"categoryId": "ITE",
"categoryName": "IT",
"subCategories": [
{
"subCategoryId": "ITE001",
"subCategoryName": "인터넷/컴퓨터"
},
{
"subCategoryId": "ITE002",
"subCategoryName": "정보통신/SW"
},
......
]
}
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}"

기능 설명: 새로운 RCS 브랜드를 등록합니다.


POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand HTTP/1.1
필드명타입필수 여부설명크기
apiIdStringRCS Biz Center에 가입시 등록한 ID 입니다.최대 20자
apiSecretStringRCS Biz Center에 가입시 발급된 clientSecret 입니다.최대 18자
필드명타입필수 여부설명
regBrandObject
mainMdnString브랜드 대표 발신번호. 입력된 번호는 chatbots에 포함되어 있어야 합니다.
profileImgFilePathString브랜드 프로필 이미지경로
bgImgFilePathString-브랜드 백그라운드 이미지경로
certiFilePathString-통신서비스이용증명원 파일경로
chatbotsArray등록할 챗봇(발신번호) 정보
필드명타입필수설명크기
nameString브랜드 이름최대 20자
descriptionString브랜드 설명최대 150자
telString브랜드 전화번호최대 12자
menusObject-최대 menu는 3개 등록 가능합니다. 브랜드 홈에는 chat이 기본 등록되어 최대 4개 표시됩니다.
categoryIdString카테고리 ID
subCategoryIdString하위 카테고리 ID
categoryOptString-검색용 키워드
zipCodeString-우편번호
roadAddressString-도로명 주소
detailAddressString-상세 주소
emailString-이메일주소
webSiteUrlString-홈페이지 주소
필드명타입필수 여부설명크기
buttonTypeString-챗봇 버튼타입최대 20자
weblinkString-URL은 http:// 또는 https:// 로 시작하여야 합니다.최대 128자
필드명타입필수설명크기
mdnString등록할 발신번호
rcsReplyStringSMS MO 수신 0, RCS Postback 수신 11자
subTitleString챗봇 이름
serviceStringA2P/CHAT 서비스 유형-
displayString-챗봇 전시 설정값 default 01, ‘00’ : 브랜드채널 노출,브랜드검색 불허,브랜드홈 비전시2자

{
"code": "10000",
"message": "성공",
"data": {
"brandId": "BR.newBrand123"
}
}

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"
}
]
}'

기능 설명: 기존 RCS 브랜드 정보를 수정합니다.


PUT https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId} HTTP/1.1
필드명타입필수설명
brandIdString브랜드 ID
필드명타입필수 여부설명크기
apiIdStringRCS Biz Center에 가입시 등록한 ID 입니다.최대 20자
apiSecretStringRCS Biz Center에 가입시 발급된 clientSecret 입니다.최대 18자
필드명타입필수 여부설명
regBrandObject
mainMdnString브랜드 대표 발신번호. 입력된 번호는 chatbots에 포함되어 있어야 합니다.
profileImgFilePathString브랜드 프로필 이미지경로.
bgImgFilePathString-브랜드 백그라운드 이미지경로.
필드명타입필수설명크기
nameString브랜드 이름최대 20자
descriptionString브랜드 설명최대 150자
telString브랜드 전화번호최대 12자
menusObject-최대 menu는 3개 등록 가능합니다. 브랜드 홈에는 chat이 기본 등록되어 최대 4개 표시됩니다.
categoryIdString카테고리 ID
subCategoryIdString하위 카테고리 ID
categoryOptString-검색용 키워드
zipCodeString-우편번호
roadAddressString-도로명 주소
detailAddressString-상세 주소
emailString-이메일주소
webSiteUrlString-홈페이지 주소
필드명타입필수 여부설명크기
buttonTypeString-챗봇 버튼타입최대 20자
weblinkString-URL은 http:// 또는 https:// 로 시작하여야 합니다.최대 128자

{
"code": "10000",
"message": "OK"
}

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": "브랜드 백그라운드 이미지경로"
}'

기능 설명: RCS 브랜드를 삭제합니다.


DELETE https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId} HTTP/1.1
필드명타입필수설명
brandIdString브랜드 ID
필드명타입필수 여부설명크기
apiIdStringRCS Biz Center에 가입시 등록한 ID 입니다.최대 20자
apiSecretStringRCS Biz Center에 가입시 발급된 clientSecret 입니다.최대 18자

{
"code": "10000",
"message": "성공"
}

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}"

기능 설명: 브랜드 내에 등록된 챗봇 리스트 조회합니다.


GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/chatbot HTTP/1.1
필드명타입필수 여부설명크기
brandIdString브랜드ID최대 13자
필드명타입필수 여부설명
brandKeyString브랜드 Key
필드명타입필수 여부설명크기
offsetString시작 offset 번호(default: 0) 입니다.
limitString조회 최대 건수(default: 100, maximum: 1000) 입니다.

{
"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
}
}
}

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}"

기능 설명: 지정된 브랜드에 챗봇(발신번호)을 등록합니다. 챗봇 등록시 브랜드포털 관리자의 승인 후 사용이 가능합니다.


GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/chatbot/{chatbotId} HTTP/1.1
필드명타입필수 여부설명크기
brandKeyString브랜드 Key최대 18자
필드명타입필수 여부설명크기
brandIdString브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다.최대 13자
chatbotIdString챗봇ID Path Parameter 입니다.

{
"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": {}
}

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}"

기능 설명: 지정된 브랜드에 챗봇(발신번호)을 등록합니다. 챗봇 등록시 브랜드포털 관리자의 승인 후 사용이 가능합니다.


POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/chatbot HTTP/1.1
필드명타입필수 여부설명크기
brandIdString브랜드ID최대 13자
필드명타입필수설명크기
subNumCertificateString통신서비스이용증명원 파일경로최대 20MB
chatbotsObject브랜드 대표 발신번호. 입력된 번호는 chatbots에 포함되어 있어야 합니다.-
필드명타입필수설명크기
mdnString등록할 발신번호최대 40자
rcsReplyStringSMS MO 수신 0, RCS Postback 수신 11자
subTitleString챗봇 이름최대 20자
serviceStringA2P/CHAT 서비스 유형최대 4자
displayString-챗봇 전시 설정값 default 01, ‘00’ : 브랜드채널 노출,브랜드검색 불허,브랜드홈 비전시2자

{
"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": {}
}

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"
}
]
}'

기능 설명: 지정된 브랜드에 챗봇의 정보를 업데이트합니다. 챗봇의 업데이트는 승인상태에 따라 처리여부가 결정됩니다


PUT https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/chatbot/{chatbotId} HTTP/1.1
필드명타입필수 여부설명크기
brandIdString브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다.최대 13자
chatbotIdString챗봇ID Path Parameter 입니다.
필드명타입필수설명크기
subNumCertificateObject통신서비스이용증명원 파일경로최대 20MB
chatbotsString브랜드 대표 발신번호. 입력된 번호는 chatbots에 포함되어 있어야 합니다.-
필드명타입필수설명크기
mdnString등록할 발신번호최대 40자
rcsReplyStringSMS MO 수신 0, RCS Postback 수신 11자
subTitleString챗봇 이름최대 20자
serviceStringA2P/CHAT 서비스 유형최대 4자
displayString-챗봇 전시 설정값 default 01, ‘00’ : 브랜드채널 노출,브랜드검색 불허,브랜드홈 비전시2자

{
"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": {}
}

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"
}
]
}'

기능 설명: 해당 챗봇을 삭제합니다. 챗봇의 삭제는 승인상태에 따라 처리 여부가 결정됩니다.


DELETE https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/chatbot/{chatbotId} HTTP/1.1
필드명타입필수 여부설명크기
brandIdString브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다.최대 13자
chatbotIdString챗봇ID Path Parameter 입니다.

{
"code": "10000",
"message": "성공",
"data": {}
}

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 리턴됩니다


GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/usableQuery/chatbotId/{chatbotId} HTTP/1.1
필드명타입필수 여부설명크기
chatbotIdString챗봇ID Path Parameter 입니다.

{
"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."
}
}

curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/rcs/v1/usableQuery/chatbotId/1...5" \
-H "accept: */*" \
-H "Authorization: Bearer {token}"


기능 설명: 템플릿 양식 목록을 조회합니다.


GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/messagebase/messagebaseform HTTP/1.1
필드명타입필수 여부설명크기
offsetString시작 offset 번호(default: 0) 입니다.
limitString조회 최대 건수(default: 100, maximum: 1000) 입니다.

{
"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"
},
....
]
}

curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/messagebase/messagebaseform?offset=0&limit=100" \
-H "accept: */*" \
-H "Authorization: Bearer {token}"

기능 설명: 템플릿 유형의 상세 내용을 조회합니다. formattedString을 이용하여 원하는 브랜드용 템플릿을 작성할 수 있습니다.


GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/messagebase/messagebaseform/{messagebaseformId} HTTP/1.1
필드명타입필수 여부설명크기
offsetString시작 offset 번호(default: 0) 입니다.
limitString조회 최대 건수(default: 100, maximum: 1000) 입니다.

{
"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": {
......
}
}

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. 이통사 기본 템플릿 목록 조회”

기능 설명: 이통사가 기본 제공하는 템플릿을 조회합니다.


GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/messagebase/common HTTP/1.1
필드명타입필수 여부설명크기
messagebaseformIdString템플릿 유형 ID

{
"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
},
....
}

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. 이통사 기본 템플릿 상세 조회”

기능 설명: 템플릿 이통사가 기본 제공하는 리치카드 별 상세 내용을 조회합니다.


GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/messagebase/common/{messagebaseId} HTTP/1.1
필드명타입필수 여부설명크기
messagebaseformIdString템플릿 유형 ID

{
"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
},
....
}

curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/messagebase/common/....." \
-H "accept: */*" \
-H "Authorization: Bearer {token}"

기능 설명: 브랜드 내에 등록된 메시지베이스 리스트 조회합니다.


GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/messagebase HTTP/1.1
필드명타입필수 여부설명크기
brandKeyString브랜드 Key최대 18자
필드명타입필수 여부설명크기
brandIdString브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다.최대 13자
필드명타입필수 여부설명크기
offsetString시작 offset 번호(default: 0) 입니다.
limitString조회 최대 건수(default: 100, maximum: 1000) 입니다.

{
"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
}
}
}

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}"

기능 설명: 브랜드 내에 등록된 메시지베이스 상세 조회합니다.


GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/messagebase/{messagebaseId} HTTP/1.1
필드명타입필수 여부설명크기
brandKeyString브랜드 Key최대 18자
필드명타입필수 여부설명크기
brandIdString브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다.최대 13자
messagebaseIdString메시지베이스ID Path Parameter 입니다.-

{
"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"
}
}
}
]
}

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}"

기능 설명: Messagebase를 등록합니다.


POST https://mnt-api.msghub.uplus.co.kr/rcs/v1.1/brand/{brandId}/messagebase HTTP/1.1
필드명타입필수 여부설명크기
brandIdString브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다.최대 13자
NameType필수설명크기
messagebaseformIdString템플릿 양식 ID최대 10자
custTmpltIdString사용자 지정 템플릿ID로 영문/숫자 25자 이내만 가능최대 25자
tmpltNameString템플릿명최대 40자
brandIdString브랜드 ID최대 13자
agencyIdString-대행사 ID최대 20자
formattedStringObject오픈리치카드를 구성하는 Widget 의 속정 정보 객체입니다.

{
"code": "100000",
"message": "성공"
}

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/"
}
}
}
}
]
}
]
}'
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을 참고해주세요.
}'
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을 참고해주세요.
}'
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 예시입니다.

"buttons": [
{
"suggestions": [
{
"action": {
"displayText": "상품 상세보기(버튼명)",
"postback": {
"data": "set_by_chatbot_open_url"
},
"urlAction": {
"openUrl": {
"url": "https://example.com/product/123"
}
}
}
}
]
}
]
"buttons": [
{
"suggestions": [
{
"action": {
"displayText": "복사하기 버튼명",
"clipboardAction": {
"copyToClipboard": {
"text": "복사할 내용"
}
},
"postback": {
"data": "set_by_chatbot_copy_to_clipboard"
}
}
}
]
}
]
"buttons": [
{
"suggestions": [
{
"action": {
"displayText": "전화걸기 버튼명",
"postback": {
"data": "set_by_chatbot_dial_phone_number"
},
"dialerAction": {
"dialPhoneNumber": {
"phoneNumber": "01012341234"
}
}
}
}
]
}
]
"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": "일정 제목"
}
}
}
}
]
}
]
"buttons": [
{
"suggestions": [
{
"action": {
"mapAction": {
"requestLocationPush": {}
},
"displayText": "현재위치 공유 버튼명",
"postback": {
"data": "set_by_chatbot_request_location_push"
}
}
}
]
}
]
"buttons": [
{
"suggestions": [
{
"action": {
"mapAction": {
"showLocation": {
"fallbackUrl": "지도 APP 미작동시 대체할 URL",
"location": {
"latitude": "위도",
"label": "지도 APP에 표시될 라벨",
"longitude": "경도"
}
}
},
"displayText": "지도 버튼명",
"postback": {
"data": "set_by_chatbot_show_location"
}
}
}
]
}
]
"buttons": [
{
"suggestions": [
{
"action": {
"mapAction": {
"showLocation": {
"fallbackUrl": "지도 APP 미작동시 대체할 URL",
"location": {
"query": "지도 APP에서 검색할 구문"
}
}
},
"displayText": "지도 버튼명",
"postback": {
"data": "set_by_chatbot_search_locations"
}
}
}
]
}
]

기능 설명: Messa요청base를 업데이트 합니다. 템플릿의 업데이트는 승인상태에 따라 처리 여부가 결정됩니다.


PUT https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/messagebase/{messagebaseId} HTTP/1.1
필드명타입필수 여부설명크기
brandIdString브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다.최대 13자
messagebaseIdString메시지베이스ID Path Parameter 입니다.-
NameType필수설명크기
messagebaseformIdString템플릿 양식 ID최대 10자
custTmpltIdString사용자 지정 템플릿ID로 영문/숫자 25자 이내만 가능최대 25자
tmpltNameString템플릿명최대 40자
brandIdString브랜드 ID최대 13자
agencyIdString-대행사 ID최대 20자
formattedStringObject오픈리치카드를 구성하는 Widget 의 속정 정보 객체입니다.

{
"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
}
}

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
}
}
}
}"

기능 설명: 브랜드 내 지정된 템플릿을 삭제합니다. 템플릿의 삭제는 승인상태에 따라 처리 여부가 결정됩니다. 한번 삭제된 템플릿은 복원이 불가능하며 동일한 ID로 생성할 수 없습니다.


DELETE https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/messagebase/{messagebaseId} HTTP/1.1
필드명타입필수 여부설명크기
brandIdString브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다.최대 13자
messagebaseIdString메시지베이스ID Path Parameter 입니다.-

{
"code": "10000",
"message": "성공"
}

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}"

기능 설명: 지정된 템플릿의 승인요청을 취소합니다. 각 상태별 취소 요청 동작은 다음과 같습니다.

승인대기 : 저장 상태로 변경
승인대기(수정) : 직전 승인 상태 및 데이터로 롤백
반려(수정) : 직전 승인 상태 및 데이터로 롤백
이외의 경우 에러 리턴


PUT https://mnt-api.msghub.uplus.co.kr/rcs/v1/brand/{brandId}/messagebase/{messagebaseId}/cancel HTTP/1.1
필드명타입필수 여부설명크기
brandIdString브랜드 정보 접근시 사용되는 브랜드ID Path Parameter 입니다.최대 13자
messagebaseIdString메시지베이스ID Path Parameter 입니다.-

{
"code": "10000",
"message": "성공"
}

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.1. 대행사 하위 고객사 프로젝트 목록 조회

Section titled “6.1. 대행사 하위 고객사 프로젝트 목록 조회”

기능 설명: 대행사가 계약된 고객사의 프로젝트 목록을 조회한다.


POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/brand/project HTTP/1.1
필드명타입필수 여부설명크기
apiIdStringRCS Biz Center에 가입시 등록한 ID 입니다.최대 20자
apiSecretStringRCS Biz Center에 가입시 발급된 clientSecret 입니다.최대 18자
필드명타입필수 여부설명크기
agencyIdStringRCS Biz Center에 등록된 대행사 ID 입니다.
regnosArray조회 대상 고객사의 사업자등록번호 목록 입니다.

{
"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"
}
]
}

curl -X GET "https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/brand/project?agencyId=.....&regnos=1.....1" \
-H "accept: */*" \
-H "apiId: ....." \
-H "apiSecret: ....." \
-H "Authorization: Bearer {token}"

6.2. 대행사 하위 고객사 프로젝트 연결

Section titled “6.2. 대행사 하위 고객사 프로젝트 연결”

기능 설명: 대행사가 계약된 고객사의 프로젝트 목록을 조회한다.


POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/subCorp/subBrandProjectReg HTTP/1.1
필드명타입필수 여부설명크기
apiIdStringRCS Biz Center에 가입시 등록한 ID 입니다.최대 20자
apiSecretStringRCS Biz Center에 가입시 발급된 clientSecret 입니다.최대 18자
필드명타입필수 여부설명크기
projectIdString연결할 프로젝트ID
corpIdString연결할 회사ID
userIdString연결 등록자 ID
subBrandsArray연결할 브랜드 아이디 목록

{
"code": "10000",
"message": "성공"
}

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}"

기능 설명: 대행사가 계약된 브랜드를 기업 단위로 조회한다.


GET ​https://mnt-api.msghub.uplus.co.kr/rcs​/v1​/agency​/{agencyId}​/corp​/{corpRegNum}​/brand HTTP/1.1
필드명타입필수 여부설명크기
apiIdStringRCS Biz Center에 가입시 등록한 ID 입니다.최대 20자
apiSecretStringRCS Biz Center에 가입시 발급된 clientSecret 입니다.최대 18자
필드명타입필수 여부설명크기
agencyIdStringRCS Biz Center에 등록된 대행사 ID 입니다.
corpRegNumString대상 기업의 사업자등록번호(10자리) 입니다.
필드명타입필수 여부설명크기
offsetString시작 offset 번호(default: 0) 입니다.
limitString조회 최대 건수(default: 100, maximum: 1000) 입니다.

{
"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"
}
]
}
}

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. 대행사 하위 브랜드 상세 조회”

기능 설명: 대행사 하위 브랜드 상세 정보를 조회한다.


GET https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/{agencyId}/brand/{brandId} HTTP/1.1
필드명타입필수 여부설명크기
apiIdStringRCS Biz Center에 가입시 등록한 ID 입니다.최대 20자
apiSecretStringRCS Biz Center에 가입시 발급된 clientSecret 입니다.최대 18자
필드명타입필수 여부설명크기
agencyIdStringRCS Biz Center에 등록된 대행사 ID 입니다.
brandIdString브랜드ID 입니다.

{
"code": "10000",
"message": "성공"
"data": [
{
"categoryId": "string",
"categoryName": "string",
"subCategories": [
{
"subCategoryId": "string",
"subCategoryName": "string"
}
],
"updateDate": "string"
}
],
"meta": {}
}

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. 대행사 하위고객 브랜드 수신 등록 목록 조회”

기능 설명: 대행사 하위고객 브랜드 수신 등록 목록 조회


POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/subCorp/brandRegList HTTP/1.1
필드명타입필수 여부설명크기
apiIdStringRCS Biz Center에 가입시 등록한 ID 입니다.최대 20자
apiSecretStringRCS Biz Center에 가입시 발급된 clientSecret 입니다.최대 18자
필드명타입필수 여부설명크기
regnoString사업자번호
brandIdString-브랜드ID 입니다.

{
"code": "10000",
"message": "성공"
"data": [
{
"regno":"사업자번호",
"brandId":"브랜드id",
"regId":"등록자id",
"regDt":"등록일자"
}
]
}

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. 대행사 하위고객 브랜드 수신 등록 설정/해제”

기능 설명: 대행사 하위고객 브랜드 수신 등록을 설정하거나 해제합니다.


POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/subCorp/brand HTTP/1.1
필드명타입필수 여부설명크기
apiIdStringRCS Biz Center에 가입시 등록한 ID 입니다.최대 20자
apiSecretStringRCS Biz Center에 가입시 발급된 clientSecret 입니다.최대 18자
필드명타입필수 여부설명크기
confYnString수신 제외 브랜드 등록/삭제(Y : 등록, N : 삭제)1자

{
"code": "10000",
"message": "성공"
"data": { }
}

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. 대행사 하위고객 브랜드 수신 등록/제외”

기능 설명: 대행사 하위고객 브랜드 수신 등록을 설정하거나 해제합니다.


POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/subCorp/brandReg HTTP/1.1
필드명타입필수 여부설명크기
apiIdStringRCS Biz Center에 가입시 등록한 ID 입니다.최대 20자
apiSecretStringRCS Biz Center에 가입시 발급된 clientSecret 입니다.최대 18자
필드명타입필수 여부설명크기
subBrandsRegString수신 제외 브랜드 등록/삭제(Y : 등록, N : 삭제)1자
subBrandsArray하위브랜드 목록

{
"code": "10000",
"message": "성공"
"data": { }
}

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}"

기능 설명: 대행사 브랜드, 메시지베이스, 챗봇 동기화 요청


POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/agency/brand/sync HTTP/1.1
필드명타입필수 여부설명크기
apiIdStringRCS Biz Center에 가입시 등록한 ID 입니다.최대 20자
apiSecretStringRCS Biz Center에 가입시 발급된 clientSecret 입니다.최대 18자

{
"code": "10000",
"message": "성공"
"data": { }
}

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. 대행사 양방향 청약 고객 목록 조회”

GET ​https://mnt-api.msghub.uplus.co.kr/rcs​/v1​/agency​/bi​/corpUnitList HTTP/1.1

{
"code": "10000",
"message": "성공"
"data": [
{
"regNo": "사업자번호",
"corpName": "회사명",
"regDate": "등록일시"
}
]
}

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. 대행사 양방향 청약 고객 등록”

POST https://mnt-api.msghub.uplus.co.kr​/rcs​/v1​/agency​/bi​/corpUnit HTTP/1.1
필드명타입필수 여부설명크기
regNoString사업자번호최대 20자
corpNameString사업자명최대 50자

{
"code": "10000",
"message": "성공",
"data": {},
"meta": {}
}

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. 대행사 양방향 청약 고객 삭제”

DELETE ​https://mnt-api.msghub.uplus.co.kr/rcs​/v1​/agency​/bi​/corpUnit/{regNo} HTTP/1.1
필드명타입필수 여부설명크기
regNoString사업자번호최대 20자

{
"code": "10000",
"message": "성공",
"data": {},
"meta": {}
}

curl -X DELETE "https://mnt-api.msghub.uplus.co.kr/rcs​/v1/agency/bi/corpUnit/1.....9" \
-H "accept: */*" \
-H "Authorization: Bearer {token}"

7.1. 캠페인 메시지 발송/읽음확인 통계 조회

Section titled “7.1. 캠페인 메시지 발송/읽음확인 통계 조회”

기능 설명: 동일 Group ID에 발송일 기준 3일간 (D+3) 집계됩니다. 단, 이통사별 발송 성공건수 100건 이상인 경우에 한해 집계됩니다. 통계 조회 기간은 데이터 존재 시 최근 1년 6개월 이내 기간 중 최대 31일까지 검색 가능합니다.


POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/statQuery/message/{brandId} HTTP/1.1
필드명타입필수 여부설명크기
brandIdString브랜드ID최대 13자
필드명타입필수 여부설명크기
brandKeyStringRCS Biz Center에서 브랜드 등록 시 자동 생성되는 Key-
startDateString요청시작일자20250501
endDateString요청종료일자20250530
campaignIdString발송 캠페인 구분 ID-
chatbotIdString-대화방ID-

{
"code": "10000",
"message": "성공",
"data": {
"status": "200",
"code": "20000000",
"result": [
{
"statDate": "통계시작날짜",
"corpId": "rbc에 등록된 회사id",
"corpRegNum": "사업자번호",
"brandId": "브랜드id",
"chatbotId": "대화방 id",
"groupId": "발송 캠페인 구분id",
"deliveredCount": 발송건수,
"displayedCount": 읽음확인건수
}
]
}
}

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일까지 검색 가능합니다.


POST https://mnt-api.msghub.uplus.co.kr/rcs/v1/statQuery/messageButton/{brandId} HTTP/1.1
필드명타입필수 여부설명크기
brandIdString브랜드ID최대 13자
필드명타입필수 여부설명크기
brandKeyStringRCS Biz Center에서 브랜드 등록 시 자동 생성되는 Key-
startDateString요청시작일자20250501
endDateString요청종료일자20250530
campaignIdString발송 캠페인 구분 ID-
chatbotIdString-대화방ID-

{
"code": "10000",
"message": "성공",
"data": {
"status": "200",
"code": "20000000",
"result": [
{
"statDate": "통계시작일",
"corpId": "rbc 등록된 회사id",
"corpRegNum": "사업자번호",
"brandId": "브랜드id",
"chatbotId": "대화방 id",
"groupId": "발송 캠페인 구분 id",
"buttonList": [
{
"buttonType": "버튼 타입",
"buttonName": "버튼명",
"clickCount": 클릭수
}
]
}
]
}
}

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일까지 검색 가능합니다.


POST https://mnt-api.msghub.uplus.co.kr​/rcs​/v1​/statQuery​/persistentMenu​/{brandId} HTTP/1.1
필드명타입필수 여부설명크기
brandIdString브랜드ID최대 13자
필드명타입필수 여부설명크기
brandKeyStringRCS Biz Center에서 브랜드 등록 시 자동 생성되는 Key-
startDateString요청시작일자20250501
endDateString요청종료일자20250530
chatbotIdString-대화방ID-

{
"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
}
]
}
]
}
]
}
]
}
}

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}"

  • RCS 공통
    • 지원 형식: JPG, JPEG, PNG, BMP, GIF
    • 파일 크기: 최대 1MB
  • 이미지형(세로형)
    • 사이즈: 568x336px (권장)
  • 이미지형(이미지 강조)
    • 사이즈: 900x900px 또는 900x1200px (필수)
  • 썸네일형
    • 이미지 사이즈: 900x560px (필수)
    • 썸네일 이미지 사이즈: 300x300px (필수)
  • SNS형
    • 사이즈: 900x900px (필수)
  • SNS형(중간버튼)
    • 사이즈: 900x560px (필수)
  • 슬라이드형(Small)
    • 사이즈: 360x336px (권장) / 360x1620px (최대)
  • 슬라이드형(Medium)
    • 사이즈: 696x504px (권장) / 696x1620px (최대)