비즈뿌리오 RAPI
공통 사항
RCS 자원 관리 API (RAPI) — RCS 메시지 발송에 필요한 브랜드·챗봇·파일·메시지베이스를 등록·조회·수정·삭제하는 관리 API.
NOTE: RAPI 는 RCS 메시지를 발송하지 않습니다. 발송은 메시지 API 또는 BIZCLIENT 를 사용합니다.
연동 규격
| 항목 | 값 |
|---|---|
| 프로토콜 | HTTPS |
| 도메인 | https://rapi.bizppurio.com/ |
| 메서드 | POST 전용 |
| 인코딩 | UTF-8 |
| Content-Type | application/json; charset=utf-8 |
| 인증 | Bearer 토큰 (Authorization: Bearer {accessToken}) |
인증 흐름
자세한 토큰 발급은 토큰 API 를 참고하세요.
공통 응답 형식
{ "code": "0000", "message": "Success", "data": { ... } }
| 필드 | 설명 |
|---|---|
code |
결과 코드 (0000 = 성공) |
message |
결과 메시지 |
data |
성공 시 응답 본문 (엔드포인트별 상이) |
NOTE: RAPI 결과 코드는 RCS 메시지 발송 결과 코드 (
8000/8200/8800등) 와 별개입니다. 발송 결과는 전송 결과 코드를 참고하세요.
Rate Limit
- 본 API 자체에 별도 명시된 Rate Limit 은 없으나, 비정상 다회 호출 시 일시 차단될 수 있습니다.
- 토큰 발급 API 는 IP 단위 별도 제한이 있을 수 있으니 토큰 캐싱 권장.
자원 ↔ 발송 연결
RAPI 로 등록·관리하는 자원은 다음과 같이 메시지 API / BIZCLIENT 에서 사용됩니다.
| RAPI 에서 등록·관리 | RCS 발송에서 사용 |
|---|---|
챗봇 ID (chatbotId) |
API content.rcs.chatbotid / BIZCLIENT BIZ_RCS.CHATBOT_ID |
브랜드 키 (brandKey) |
API content.rcs.brandkey / BIZCLIENT BIZ_RCS.BRAND_KEY |
메시지베이스 ID (messagebaseId) |
API content.rcs.messagebaseid / BIZCLIENT BIZ_RCS.MESSAGEBASE_ID |
등록된 이미지 (fileId) |
API content.rcs.message.media (maapfile://{fileId} 형식) |
대행사 키 (agencyKey) |
API content.rcs.agencykey / BIZCLIENT BIZ_RCS.AGENCY_KEY |
자원 의존 관계
토큰
RAPI 는 bizId + apiKey 로 인증 토큰을 발급받은 뒤 후속 호출에 사용합니다.
- 도메인:
https://rapi.bizppurio.com/ - 인증 토큰 발급 후
Authorization: Bearer {accessToken}헤더 첨부 - 만료 직전에
refreshToken으로 재발급하도록 운영하세요.
인증 토큰 생성
bizId + apiKey 를 본문에 담아 호출하여 RAPI 인증 토큰을 발급받습니다.
accessToken은 후속 RAPI 호출 시Authorization: Bearer {accessToken}형식으로 첨부합니다.refreshToken은 토큰 재발급 호출에 사용합니다.- 만료 직전에 재발급하도록 운영하세요. 만료된 토큰은 후속 호출에서 인증 오류가 발생합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| bizId | string | 필수 | 비즈뿌리오 사용자 ID |
| apiKey | string | 필수 | 발급받은 API Key |
curl -X POST "https://rapi.bizppurio.com/rcsapi/v1/token" \
-H "Content-Type: application/json" \
-d '{
"bizId": "bizUserId001",
"apiKey": "[발급 받은 API Key]"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | — |
| └accessToken | string | 필수 | 인증 토큰 |
| └expiresIn | integer | 필수 | 만료 시간 (unixtime) |
| └refreshToken | string | 필수 | 리프레시 토큰 |
{
"code": "200",
"data": {
"accessToken": "[인증 토큰]",
"expiresIn": 1568694883,
"refreshToken": "[리프레시 토큰]"
}
}인증 토큰 재생성
만료되거나 만료 임박한 accessToken 을 refreshToken 으로 재발급합니다.
응답 구조는 토큰 생성 과 동일하며, 새로운 accessToken / expiresIn / refreshToken 이 발급됩니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| accessToken | string | 필수 | 만료되거나 만료 임박한 인증 토큰 |
| refreshToken | string | 필수 | 인증 토큰 생성 시 받은 리프레시 토큰 |
curl -X POST "https://rapi.bizppurio.com/rcsapi/v1/refresh_token" \
-H "Content-Type: application/json" \
-d '{
"accessToken": "string",
"refreshToken": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | — |
| └accessToken | string | 필수 | 인증 토큰 |
| └expiresIn | integer | 필수 | 만료 시간 (unixtime) |
| └refreshToken | string | 필수 | 리프레시 토큰 |
{
"code": "string",
"message": "string",
"data": {
"accessToken": "string",
"expiresIn": 0,
"refreshToken": "string"
}
}브랜드
이미 BizCenter(RBC) 에 등록된 브랜드를 비즈뿌리오 파트너에 연동하고 상세 정보를 조회합니다.
브랜드 자체 등록·수정·삭제 승인은 기업 전용 브랜드 관리 에서 처리됩니다.
브랜드 연동
BizCenter(RBC) 에 등록된 브랜드를 현재 파트너에 연동합니다.
브랜드 자체 등록·수정·삭제 승인은 기업 전용 브랜드 관리 를 참고하세요.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| brandId | string | 필수 | BizCenter 에서 생성한 브랜드 ID |
| brandKey | string | 필수 | BizCenter 에서 기업 관리자가 발급하여 대행사에 전달한 브랜드 Key |
curl -X POST "{baseUrl}/rcsapi/v1/brand/link" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"brandId": "string",
"brandKey": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | 브랜드 상세 |
| └brandId | string | — | 브랜드 ID |
| └brandKey | string | — | 브랜드 Key |
| └partnerId | string | — | 파트너 아이디 |
| └name | string | — | 브랜드 명 |
| └status | string | — | 브랜드 상태 |
| └registerDate | string | — | 브랜드 등록일시 |
| └updateDate | string | — | 브랜드 최종 수정일시 |
| └linkDate | string | — | 파트너 연동일시 |
| └chatbotDate | string | — | 챗봇 최종 수정일시 |
| └messagebaseDate | string | — | 템플릿 최종 수정일시 |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"brandId": "string",
"brandKey": "string",
"partnerId": "string",
"name": "string",
"status": "string",
"registerDate": "string",
"updateDate": "string",
"linkDate": "string",
"chatbotDate": "string",
"messagebaseDate": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}브랜드 연동 상세 조회
해당 파트너와 연동된 브랜드를 조회합니다.
RAPI 는 대부분 POST 이지만 이 엔드포인트는 GET 입니다.
curl -X GET "{baseUrl}/rcsapi/v1/brand" \
-H "Authorization: Bearer {accessToken}"| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | 브랜드 상세 |
| └brandId | string | — | 브랜드 ID |
| └brandKey | string | — | 브랜드 Key |
| └partnerId | string | — | 파트너 아이디 |
| └name | string | — | 브랜드 명 |
| └status | string | — | 브랜드 상태 |
| └registerDate | string | — | 브랜드 등록일시 |
| └updateDate | string | — | 브랜드 최종 수정일시 |
| └linkDate | string | — | 파트너 연동일시 |
| └chatbotDate | string | — | 챗봇 최종 수정일시 |
| └messagebaseDate | string | — | 템플릿 최종 수정일시 |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"brandId": "string",
"brandKey": "string",
"partnerId": "string",
"name": "string",
"status": "string",
"registerDate": "string",
"updateDate": "string",
"linkDate": "string",
"chatbotDate": "string",
"messagebaseDate": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}챗봇
브랜드 산하의 챗봇(chatbotId) CRUD + 목록·상세 조회 (5개 엔드포인트).
RCS 메시지 발송 시 챗봇 ID 는 chatbotid 필드로 사용됩니다.
A2P 챗봇의 경우 chatbotId 는 발신번호와 동일하며, CHAT 서비스의 경우 별도 ID 가 발급됩니다.
챗봇 등록
브랜드 내에서 사용할 챗봇을 등록합니다. 등록된 챗봇은 브랜드 포털 관리자의 승인 후 사용 가능합니다.
A2P 챗봇의 경우
chatbotId는 발신번호와 동일합니다. CHAT 서비스의 경우 별도 ID 가 발급됩니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| brandId | string | 필수 | BizCenter 에서 생성한 브랜드 ID |
| mdn | string | 필수 | 등록할 발신번호 (국가번호 생략) |
| rcsReply | string | 필수 | 수신모드 설정 — SMS MO:0 / RCS Postback:1 = 0 | 1 |
| subTitle | string | 필수 | 챗봇 명 |
| subNumCertificate | string <binary> | 필수 | 통신 서비스 이용 증명원 파일 |
| display | string | — | 전시 여부 |
| service | string | — | A2P/CHAT 서비스 유형 |
| subNum | string | — | 챗봇 ID (A2P 의 경우 발신번호와 동일) |
| webhook | string | — | service 가 chat 인 경우 필수 (URL) |
curl -X POST "{baseUrl}/rcsapi/v1/brand/chatbot/create" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"brandId": "string",
"mdn": "string",
"rcsReply": "0",
"subTitle": "string",
"subNumCertificate": "{binary}",
"display": "string",
"service": "string",
"subNum": "string",
"webhook": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | 챗봇 요약 (목록용) |
| └chatbotId | string | — | 챗봇 ID |
| └brandId | string | — | — |
| └subNum | string | — | 회신번호 |
| └subTitle | string | — | 챗봇 명 |
| └display | string | — | 전시 상태 |
| └isMainNum | boolean | — | 대표번호 여부 |
| └groupId | string | — | 그룹 ID |
| └approvalResult | string | — | 승인 상태 |
| └approvalDate | string | — | 챗봇 승인 일시 |
| └registerDate | string | — | 챗봇 등록 일시 |
| └updateDate | string | — | 챗봇 수정일시 |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"chatbotId": "string",
"brandId": "string",
"subNum": "string",
"subTitle": "string",
"display": "string",
"isMainNum": true,
"groupId": "string",
"approvalResult": "string",
"approvalDate": "string",
"registerDate": "string",
"updateDate": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}챗봇 수정
챗봇을 수정합니다. 승인 상태에 따라 처리 여부가 결정됩니다 (저장 / 반려 / 승인 상태).
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| brandId | string | 필수 | BizCenter 에서 생성한 브랜드 ID |
| mdn | string | 필수 | 등록할 발신번호 (국가번호 생략) |
| rcsReply | string | 필수 | 수신모드 설정 — SMS MO:0 / RCS Postback:1 = 0 | 1 |
| subTitle | string | 필수 | 챗봇 명 |
| subNumCertificate | string <binary> | 필수 | 통신 서비스 이용 증명원 파일 |
| display | string | — | 전시 여부 |
| service | string | — | A2P/CHAT 서비스 유형 |
| subNum | string | — | 챗봇 ID (A2P 의 경우 발신번호와 동일) |
| webhook | string | — | service 가 chat 인 경우 필수 (URL) |
| chatbotId | string | 필수 | 수정 대상 챗봇 ID |
curl -X POST "{baseUrl}/rcsapi/v1/brand/chatbot/update" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"brandId": "string",
"mdn": "string",
"rcsReply": "0",
"subTitle": "string",
"subNumCertificate": "{binary}",
"display": "string",
"service": "string",
"subNum": "string",
"webhook": "string",
"chatbotId": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | allOf | — | — |
| └chatbotId | string | — | 챗봇 ID |
| └brandId | string | — | — |
| └subNum | string | — | 회신번호 |
| └subTitle | string | — | 챗봇 명 |
| └display | string | — | 전시 상태 |
| └isMainNum | boolean | — | 대표번호 여부 |
| └groupId | string | — | 그룹 ID |
| └approvalResult | string | — | 승인 상태 |
| └approvalDate | string | — | 챗봇 승인 일시 |
| └registerDate | string | — | 챗봇 등록 일시 |
| └updateDate | string | — | 챗봇 수정일시 |
| └approvalReason | string | — | 승인 사유 |
| └botTcPage | string | — | 이용 약관 페이지 URL (수정 불가) |
| └mediaUrl | array<object> | — | 이미지 파일 ID / URL / 사용 유형 배열 |
| └registerId | string | — | 챗봇 등록 계정 ID |
| └updateId | string | — | 챗봇 수정 계정 ID |
| └searchWeight | string | — | 검색 우선 순위 (수정 불가) |
| └service | string | — | A2P/CHAT 서비스 유형 |
| └webhook | string | — | CHAT 서비스 시 webhook URL |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"chatbotId": "string",
"brandId": "string",
"subNum": "string",
"subTitle": "string",
"display": "string",
"isMainNum": true,
"groupId": "string",
"approvalResult": "string",
"approvalDate": "string",
"registerDate": "string",
"updateDate": "string",
"approvalReason": "string",
"botTcPage": "string",
"mediaUrl": [
{}
],
"registerId": "string",
"updateId": "string",
"searchWeight": "string",
"service": "string",
"webhook": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}챗봇 삭제
지정한 챗봇을 삭제합니다.
⚠️ 한번 삭제된 챗봇은 복원이 불가능하며, 동일한 ID 로 다시 생성할 수 없습니다. 삭제는 승인 상태에 따라 처리 여부가 결정됩니다 (저장 / 반려 / 승인).
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| brandId | string | 필수 | BizCenter 에서 생성한 브랜드 ID |
| chatbotId | string | 필수 | 삭제할 챗봇 ID |
curl -X POST "{baseUrl}/rcsapi/v1/brand/chatbot/remove" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"brandId": "string",
"chatbotId": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | — |
| └chatbotId | string | — | 삭제된 챗봇 ID |
{
"code": "string",
"message": "string",
"data": {
"chatbotId": "string"
}
}챗봇 목록 조회
브랜드에 등록된 챗봇 목록을 페이지네이션으로 조회합니다.
curl -X GET "{baseUrl}/rcsapi/v1/brand/chatbot/list" \
-H "Authorization: Bearer {accessToken}"| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | array<object> | — | — |
| └chatbotId | string | — | 챗봇 ID |
| └brandId | string | — | — |
| └subNum | string | — | 회신번호 |
| └subTitle | string | — | 챗봇 명 |
| └display | string | — | 전시 상태 |
| └isMainNum | boolean | — | 대표번호 여부 |
| └groupId | string | — | 그룹 ID |
| └approvalResult | string | — | 승인 상태 |
| └approvalDate | string | — | 챗봇 승인 일시 |
| └registerDate | string | — | 챗봇 등록 일시 |
| └updateDate | string | — | 챗봇 수정일시 |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": [
{
"chatbotId": "string",
"brandId": "string",
"subNum": "string",
"subTitle": "string",
"display": "string",
"isMainNum": true,
"groupId": "string",
"approvalResult": "string",
"approvalDate": "string",
"registerDate": "string",
"updateDate": "string"
}
],
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}curl -X GET "{baseUrl}/rcsapi/v1/brand/chatbot/info" \
-H "Authorization: Bearer {accessToken}"| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | allOf | — | — |
| └chatbotId | string | — | 챗봇 ID |
| └brandId | string | — | — |
| └subNum | string | — | 회신번호 |
| └subTitle | string | — | 챗봇 명 |
| └display | string | — | 전시 상태 |
| └isMainNum | boolean | — | 대표번호 여부 |
| └groupId | string | — | 그룹 ID |
| └approvalResult | string | — | 승인 상태 |
| └approvalDate | string | — | 챗봇 승인 일시 |
| └registerDate | string | — | 챗봇 등록 일시 |
| └updateDate | string | — | 챗봇 수정일시 |
| └approvalReason | string | — | 승인 사유 |
| └botTcPage | string | — | 이용 약관 페이지 URL (수정 불가) |
| └mediaUrl | array<object> | — | 이미지 파일 ID / URL / 사용 유형 배열 |
| └registerId | string | — | 챗봇 등록 계정 ID |
| └updateId | string | — | 챗봇 수정 계정 ID |
| └searchWeight | string | — | 검색 우선 순위 (수정 불가) |
| └service | string | — | A2P/CHAT 서비스 유형 |
| └webhook | string | — | CHAT 서비스 시 webhook URL |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"chatbotId": "string",
"brandId": "string",
"subNum": "string",
"subTitle": "string",
"display": "string",
"isMainNum": true,
"groupId": "string",
"approvalResult": "string",
"approvalDate": "string",
"registerDate": "string",
"updateDate": "string",
"approvalReason": "string",
"botTcPage": "string",
"mediaUrl": [
{}
],
"registerId": "string",
"updateId": "string",
"searchWeight": "string",
"service": "string",
"webhook": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}파일
RCS 메시지에서 사용할 Maap 미디어 파일을 등록·조회합니다 (2개 엔드포인트).
등록된 파일은 fileId 로 식별되며, RCS 발송 시 maapfile://{fileId} 형식으로 참조합니다.
이미지는 등록일로부터 365일 발송 가능합니다.
파일 등록
RCS 메시지에서 사용할 Maap 미디어 파일을 등록합니다.
등록된 파일은 fileId 로 식별되며, RCS 발송 시 maapfile://{fileId} 형식으로 참조합니다.
이미지는 등록일로부터 365일 발송 가능합니다 (이후 자동 삭제). 운영 시 파일 ID 만료 관리가 필요합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| file | string <binary> | 필수 | 업로드 파일 |
| fileId | string | 필수 | 파일 ID |
| mimeType | string | 필수 | Mime type (image/jpeg, image/png 등) |
| usageType | string | 필수 | 사용 타입 — chatbot / messagebase / send = chatbot | messagebase | send |
curl -X POST "{baseUrl}/rcsapi/v1/file/send" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"file": "{binary}",
"fileId": "string",
"mimeType": "string",
"usageType": "chatbot"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | 파일 상세 |
| └fileId | string | — | — |
| └mimeType | string | — | — |
| └usageType | string | — | = chatbot | messagebase | send |
| └status | string | — | 파일 상태 = ready | expired |
| └expiryDate | string | — | 유효 기간 |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"fileId": "string",
"mimeType": "string",
"usageType": "chatbot",
"status": "ready",
"expiryDate": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}파일 상세 조회
등록된 Maap 미디어 파일의 상세 정보를 통신사 별로 조회합니다.
curl -X GET "{baseUrl}/rcsapi/v1/file/info" \
-H "Authorization: Bearer {accessToken}"| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | 파일 상세 |
| └fileId | string | — | — |
| └mimeType | string | — | — |
| └usageType | string | — | = chatbot | messagebase | send |
| └status | string | — | 파일 상태 = ready | expired |
| └expiryDate | string | — | 유효 기간 |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"fileId": "string",
"mimeType": "string",
"usageType": "chatbot",
"status": "ready",
"expiryDate": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}메시지베이스
메시지베이스(messagebaseId) CRUD + 양식·이통사 기본 제공 조회 (9개 엔드포인트).
메시지베이스는 RCS 메시지의 포맷·카드 수·버튼 수를 결정하는 식별자입니다.
메시지베이스 등록
브랜드 내에서 사용할 메시지베이스(템플릿) 를 등록합니다. 등록된 메시지베이스는 브랜드 포털 관리자의 승인 후 사용 가능합니다.
formattedString은 메시지베이스 양식 목록 또는 메시지베이스 유형 상세 에서 조회한 양식의formattedString을 사용해야 합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| brandId | string | 필수 | 브랜드 ID |
| custTmpltId | string | 필수 | 사용자 지정 템플릿 ID (정규식 ^[0-9A-Za-z]{1,25}$) |
| messagebaseformId | string | 필수 | 메시지베이스 폼 ID (정규식 ^[0-9A-Za-z]{1,10}$) |
| formattedString | object | 필수 | 메시지베이스 포맷 (양식 조회 결과 사용) |
| tmpltName | string | 필수 | 메시지베이스 명 |
curl -X POST "{baseUrl}/rcsapi/v1/brand/msgbase/create" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"brandId": "string",
"custTmpltId": "string",
"messagebaseformId": "string",
"formattedString": {},
"tmpltName": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | — |
| └messagebaseId | string | — | 메시지베이스 ID |
{
"code": "string",
"message": "string",
"data": {
"messagebaseId": "string"
}
}메시지베이스 수정
지정한 메시지베이스를 수정합니다.
⚠️ 승인 상태에 따라 처리 여부가 결정됩니다 (저장 / 반려 상태). 템플릿 수정 시 기존에 사용된
messagebaseformId는 동일한 cardType(cell,description) 에 한해 변경 가능합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| brandId | string | 필수 | 브랜드 ID |
| custTmpltId | string | 필수 | 사용자 지정 템플릿 ID (정규식 ^[0-9A-Za-z]{1,25}$) |
| messagebaseformId | string | 필수 | 메시지베이스 폼 ID (정규식 ^[0-9A-Za-z]{1,10}$) |
| formattedString | object | 필수 | 메시지베이스 포맷 (양식 조회 결과 사용) |
| tmpltName | string | 필수 | 메시지베이스 명 |
| messagebaseId | string | 필수 | 수정 대상 메시지베이스 ID |
curl -X POST "{baseUrl}/rcsapi/v1/brand/msgbase/update" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"brandId": "string",
"custTmpltId": "string",
"messagebaseformId": "string",
"formattedString": {},
"tmpltName": "string",
"messagebaseId": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | — |
| └messagebaseId | string | — | 메시지베이스 ID |
{
"code": "string",
"message": "string",
"data": {
"messagebaseId": "string"
}
}메시지베이스 삭제
지정한 메시지베이스를 삭제합니다.
⚠️ 한번 삭제된 메시지베이스는 복원이 불가능하며, 동일한 ID 로 다시 생성할 수 없습니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| brandId | string | 필수 | 브랜드 ID |
| messagebaseId | string | 필수 | 삭제 대상 메시지베이스 ID |
curl -X POST "{baseUrl}/rcsapi/v1/brand/msgbase/remove" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"brandId": "string",
"messagebaseId": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | — |
| └messagebaseId | string | — | 메시지베이스 ID |
{
"code": "string",
"message": "string",
"data": {
"messagebaseId": "string"
}
}메시지베이스 목록 조회
브랜드에 등록된 메시지베이스 목록을 페이지네이션으로 조회합니다.
curl -X GET "{baseUrl}/rcsapi/v1/brand/msgbase/list" \
-H "Authorization: Bearer {accessToken}"| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | array<object> | — | — |
| └messagebaseId | string | — | — |
| └messagebaseformId | string | — | — |
| └brandId | string | — | — |
| └groupId | string | — | — |
| └tmpltName | string | — | 메시지베이스 명 |
| └status | string | — | 메시지베이스 상태 |
| └approvalResult | string | — | 승인 상태 |
| └approvalReason | string | — | 승인 사유 |
| └approvalDate | string | — | 승인 일시 |
| └registerDate | string | — | — |
| └registerId | string | — | — |
| └updateDate | string | — | — |
| └updateId | string | — | — |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": [
{
"messagebaseId": "string",
"messagebaseformId": "string",
"brandId": "string",
"groupId": "string",
"tmpltName": "string",
"status": "string",
"approvalResult": "string",
"approvalReason": "string",
"approvalDate": "string",
"registerDate": "string",
"registerId": "string",
"updateDate": "string",
"updateId": "string"
}
],
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}메시지베이스 상세 조회
지정 메시지베이스의 풀 필드 셋을 조회합니다 (formattedString, attribute, cardType, params, guideInfo, policyInfo, spec 등 포함).
curl -X GET "{baseUrl}/rcsapi/v1/brand/msgbase/info" \
-H "Authorization: Bearer {accessToken}"| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | allOf | — | — |
| └messagebaseId | string | — | — |
| └messagebaseformId | string | — | — |
| └brandId | string | — | — |
| └groupId | string | — | — |
| └tmpltName | string | — | 메시지베이스 명 |
| └status | string | — | 메시지베이스 상태 |
| └approvalResult | string | — | 승인 상태 |
| └approvalReason | string | — | 승인 사유 |
| └approvalDate | string | — | 승인 일시 |
| └registerDate | string | — | — |
| └registerId | string | — | — |
| └updateDate | string | — | — |
| └updateId | string | — | — |
| └agencyId | string | — | 대행사 ID |
| └attribute | array<object> | — | — |
| └cardType | string | — | 카드 종류 (Cell / Description / Free) |
| └formattedString | object | — | 메시지베이스 포맷 |
| └guideInfo | object | — | — |
| └inputText | string | — | — |
| └params | array<object> | — | — |
| └policyInfo | object | — | — |
| └spec | string | — | — |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"messagebaseId": "string",
"messagebaseformId": "string",
"brandId": "string",
"groupId": "string",
"tmpltName": "string",
"status": "string",
"approvalResult": "string",
"approvalReason": "string",
"approvalDate": "string",
"registerDate": "string",
"registerId": "string",
"updateDate": "string",
"updateId": "string",
"agencyId": "string",
"attribute": [
{}
],
"cardType": "string",
"formattedString": {},
"guideInfo": {},
"inputText": "string",
"params": [
{}
],
"policyInfo": {},
"spec": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}메시지베이스 양식 목록 조회
오픈리치카드 템플릿 작성에 사용할 양식 목록을 조회합니다.
curl -X GET "{baseUrl}/rcsapi/v1/msgbaseform/list" \
-H "Authorization: Bearer {accessToken}"| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | array<object> | — | — |
| └messagebaseformId | string | — | — |
| └formName | string | — | — |
| └cardType | string | — | — |
| └bizCategory | string | — | — |
| └bizCondition | array<string> | — | 대상 업태 배열 |
| └bizService | string | — | — |
| └registerDate | string | — | — |
| └updateDate | string | — | — |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": [
{
"messagebaseformId": "string",
"formName": "string",
"cardType": "string",
"bizCategory": "string",
"bizCondition": [
"string"
],
"bizService": "string",
"registerDate": "string",
"updateDate": "string"
}
],
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}메시지베이스 유형 상세 조회
지정 양식의 풀 필드 셋을 조회합니다. 응답의 formattedString 을 이용하여 브랜드용 메시지베이스를 등록 할 수 있습니다.
curl -X GET "{baseUrl}/rcsapi/v1/msgbaseform/info" \
-H "Authorization: Bearer {accessToken}"| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | allOf | — | — |
| └messagebaseformId | string | — | — |
| └formName | string | — | — |
| └cardType | string | — | — |
| └bizCategory | string | — | — |
| └bizCondition | array<string> | — | 대상 업태 배열 |
| └bizService | string | — | — |
| └registerDate | string | — | — |
| └updateDate | string | — | — |
| └formattedString | object | — | 메시지베이스 포맷 |
| └guideInfo | object | — | — |
| └mediaUrl | array<object> | — | — |
| └params | array<object> | — | — |
| └policyInfo | object | — | — |
| └productCode | string | — | 상품 코드 (sms / lms / mms 등) |
| └spec | string | — | — |
{
"code": "string",
"message": "string",
"data": {
"messagebaseformId": "string",
"formName": "string",
"cardType": "string",
"bizCategory": "string",
"bizCondition": [
"string"
],
"bizService": "string",
"registerDate": "string",
"updateDate": "string",
"formattedString": {},
"guideInfo": {},
"mediaUrl": [
{}
],
"params": [
{}
],
"policyInfo": {},
"productCode": "string",
"spec": "string"
}
}메시지베이스 조회 (이통사 기본 제공)
리치카드 규격의 SMS, LMS, MMS 용 메시지베이스(SS000000, SL000000, SMwT*, CMwM* 등) 를 조회합니다.
카드 종류
standalonestandalone media topstandalone horizontalcarousel mediumcarousel small
curl -X GET "{baseUrl}/rcsapi/v1/msgbase/common/list" \
-H "Authorization: Bearer {accessToken}"| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | array<object> | — | — |
| └messagebaseId | string | — | — |
| └messagebaseformId | string | — | — |
| └brandId | string | — | — |
| └groupId | string | — | — |
| └tmpltName | string | — | 메시지베이스 명 |
| └status | string | — | 메시지베이스 상태 |
| └approvalResult | string | — | 승인 상태 |
| └approvalReason | string | — | 승인 사유 |
| └approvalDate | string | — | 승인 일시 |
| └registerDate | string | — | — |
| └registerId | string | — | — |
| └updateDate | string | — | — |
| └updateId | string | — | — |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": [
{
"messagebaseId": "string",
"messagebaseformId": "string",
"brandId": "string",
"groupId": "string",
"tmpltName": "string",
"status": "string",
"approvalResult": "string",
"approvalReason": "string",
"approvalDate": "string",
"registerDate": "string",
"registerId": "string",
"updateDate": "string",
"updateId": "string"
}
],
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}메시지베이스 상세 조회 (이통사 기본 제공)
이통사가 기본 제공하는 메시지베이스의 풀 필드 셋을 조회합니다.
curl -X GET "{baseUrl}/rcsapi/v1/msgbase/common/info" \
-H "Authorization: Bearer {accessToken}"| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | allOf | — | — |
| └messagebaseId | string | — | — |
| └messagebaseformId | string | — | — |
| └brandId | string | — | — |
| └groupId | string | — | — |
| └tmpltName | string | — | 메시지베이스 명 |
| └status | string | — | 메시지베이스 상태 |
| └approvalResult | string | — | 승인 상태 |
| └approvalReason | string | — | 승인 사유 |
| └approvalDate | string | — | 승인 일시 |
| └registerDate | string | — | — |
| └registerId | string | — | — |
| └updateDate | string | — | — |
| └updateId | string | — | — |
| └agencyId | string | — | 대행사 ID |
| └attribute | array<object> | — | — |
| └cardType | string | — | 카드 종류 (Cell / Description / Free) |
| └formattedString | object | — | 메시지베이스 포맷 |
| └guideInfo | object | — | — |
| └inputText | string | — | — |
| └params | array<object> | — | — |
| └policyInfo | object | — | — |
| └spec | string | — | — |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"messagebaseId": "string",
"messagebaseformId": "string",
"brandId": "string",
"groupId": "string",
"tmpltName": "string",
"status": "string",
"approvalResult": "string",
"approvalReason": "string",
"approvalDate": "string",
"registerDate": "string",
"registerId": "string",
"updateDate": "string",
"updateId": "string",
"agencyId": "string",
"attribute": [
{}
],
"cardType": "string",
"formattedString": {},
"guideInfo": {},
"inputText": "string",
"params": [
{}
],
"policyInfo": {},
"spec": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}기본 로고 이미지 정보 조회
RBC 에서 템플릿용으로 제공되는 기본 로고 이미지 정보를 조회합니다.
curl -X GET "{baseUrl}/rcsapi/v1/msgbaseform/logo" \
-H "Authorization: Bearer {accessToken}"| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | array<object> | — | — |
| └fileId | string | — | — |
| └fileName | string | — | — |
| └fileUrl | string | — | — |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": [
{
"fileId": "string",
"fileName": "string",
"fileUrl": "string"
}
],
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}메시지베이스 등록 (v2)
브랜드 내에서 사용할 메시지베이스를 v2 규격으로 등록합니다. messagebaseformId 의 params 각 항목 중 템플릿에 표시될 내용을 body 로 입력하여 원하는 템플릿을 등록합니다.
등록된 메시지베이스는 RCS Biz Center 운영자의 승인 후 사용 가능합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| brandId | string | 필수 | 브랜드 ID |
| custTmpltId | string | 필수 | 사용자 지정 템플릿 ID |
| messagebaseformId | string | 필수 | 메시지베이스 폼 ID |
| tmpltName | string(40) | 필수 | 메시지베이스 명 |
| body | array<object> | 필수 | — |
| └lineIndex | integer | — | 라인 인덱스 |
| └param | string | — | 파라미터 키 |
| └value | string | — | 표시될 값 |
| └decoration | object | — | 본문 항목 데코레이션 |
| └background | string | — | — |
| └height | string | — | — |
| └textAlignment | string | — | — |
| └textColor | string | — | — |
| └textSize | string | — | — |
| └textStyle | string | — | — |
| buttons | array<object> | — | — |
| └suggestions | array<object> | — | — |
| └action | object | — | 버튼 액션 정의 |
curl -X POST "{baseUrl}/rcsapi/v1/brand/msgbase/v2/create" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"brandId": "string",
"custTmpltId": "string",
"messagebaseformId": "string",
"tmpltName": "string",
"body": [
{
"lineIndex": 0,
"param": "string",
"value": "string",
"decoration": {
"background": "string",
"height": "string",
"textAlignment": "string",
"textColor": "string",
"textSize": "string",
"textStyle": "string"
}
}
],
"buttons": [
{
"suggestions": [
{
"action": {}
}
]
}
]
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | — |
| └messagebaseId | string | — | 메시지베이스 ID |
{
"code": "string",
"message": "string",
"data": {
"messagebaseId": "string"
}
}메시지베이스 수정 (v2)
메시지베이스의 ID 를 유지하면서 내용을 변경합니다. 수정 등록된 템플릿은 RCS Biz Center 운영자의 승인이 필요합니다.
지원 범위: 텍스트 템플릿(타이틀 선택형 / 타이틀 자유형), 이미지 템플릿, LMS 템플릿.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| brandId | string | 필수 | 브랜드 ID |
| messagebaseId | string | 필수 | 메시지베이스 ID |
| messagebaseformId | string | 필수 | 메시지베이스 폼 ID |
| tmpltName | string(40) | 필수 | 메시지베이스 명 |
| body | array<object> | 필수 | — |
| └lineIndex | integer | — | 라인 인덱스 |
| └param | string | — | 파라미터 키 |
| └value | string | — | 표시될 값 |
| └decoration | object | — | 본문 항목 데코레이션 |
| └background | string | — | — |
| └height | string | — | — |
| └textAlignment | string | — | — |
| └textColor | string | — | — |
| └textSize | string | — | — |
| └textStyle | string | — | — |
| buttons | array<object> | — | — |
| └suggestions | array<object> | — | — |
| └action | object | — | 버튼 액션 정의 |
curl -X POST "{baseUrl}/rcsapi/v1/brand/msgbase/v2/update" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"brandId": "string",
"messagebaseId": "string",
"messagebaseformId": "string",
"tmpltName": "string",
"body": [
{
"lineIndex": 0,
"param": "string",
"value": "string",
"decoration": {
"background": "string",
"height": "string",
"textAlignment": "string",
"textColor": "string",
"textSize": "string",
"textStyle": "string"
}
}
],
"buttons": [
{
"suggestions": [
{
"action": {}
}
]
}
]
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | — |
| └messagebaseId | string | — | 메시지베이스 ID |
{
"code": "string",
"message": "string",
"data": {
"messagebaseId": "string"
}
}이미지 템플릿용 파일 등록
이미지 템플릿에서 사용할 이미지 파일을 등록합니다.
파일을 먼저 등록해야 이미지 템플릿 등록 시
fileId를 지정할 수 있습니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| brandId | string | 필수 | BizCenter 에서 생성한 브랜드 ID |
| file | string <binary> | 필수 | 업로드 파일 |
curl -X POST "{baseUrl}/rcsapi/v1/brand/msgbase/v2/file/create" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"brandId": "string",
"file": "{binary}"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | array<object> | — | — |
| └fileId | string | — | 파일 ID |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": [
{
"fileId": "string"
}
],
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}이미지 템플릿용 파일 정보 조회
이미지 템플릿용으로 등록한 이미지 파일 정보를 조회합니다.
지원 범위: 이미지 템플릿, LMS 템플릿.
curl -X GET "{baseUrl}/rcsapi/v1/brand/msgbase/v2/file/info" \
-H "Authorization: Bearer {accessToken}"| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | array<object> | — | — |
| └fileId | string | — | — |
| └fileName | string | — | — |
| └imageWidth | string | — | — |
| └imageHeight | string | — | — |
| └url | string | — | — |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": [
{
"fileId": "string",
"fileName": "string",
"imageWidth": "string",
"imageHeight": "string",
"url": "string"
}
],
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}기업 전용 브랜드
기업관리자 계정으로 브랜드 자체를 등록·수정·삭제·권한 위임할 수 있는 엔드포인트 (11개).
모든 엔드포인트는 기업관리자 권한이 필요합니다.
브랜드 등록 승인
기업관리자 계정으로 등록된 브랜드 승인을 요청합니다.
1개 이상의 발신번호를 반드시 함께 등록해야 하며, 브랜드 프로필 이미지·발신번호 통신서비스 가입증명원이 필요합니다.
brandBackground 제거 방법 — 등록되어 있는 백그라운드 이미지를 제거하려면 파일 없이
brandBackgroundform key 만 전송합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| clientId | string | 필수 | BizCenter ID (기업관리자) |
| clientSecret | string | 필수 | API Key |
| regBrand | object | 필수 | 브랜드 등록·수정 공용 객체 |
| └name | string | 필수 | 브랜드 홈에 표시되는 브랜드 이름 |
| └description | string | 필수 | 브랜드 홈에 표시되는 브랜드 설명 |
| └tel | string | 필수 | 브랜드 홈 전화번호 (대표 발신번호와 별개) |
| └categoryId | string | 필수 | 브랜드 카테고리 ID |
| └subCategoryId | string | 필수 | 브랜드 하위 카테고리 ID |
| └categoryOpt | string | — | 검색용 키워드 임의 등록 |
| └zipCode | string | — | 우편번호 |
| └roadAddress | string | — | 도로명주소 |
| └detailAddress | string | — | 상세주소 |
| string | — | 이메일주소 | |
| └webSiteUrl | string | — | 홈페이지 주소 |
| └menus | array<object> | — | 메뉴 정보 (브랜드 홈에 최대 4개. |
| └buttonType | string | 필수 | 버튼 유형 = call | web | app | store | order | buy | tickets | moreinfo |
| └applink | object | — | APP Link 패키지 정보 객체 |
| └packageName | string | 필수 | APP 실행 패키지명 |
| └action | string | 필수 | APP 실행 Action |
| └uri | string | 필수 | APP 실행 URI |
| └weblink | string | — | call 외 모든 버튼의 Web URL (http:// 또는 https:// 로 시작) |
| brandProfile | string <binary> | 필수 | 프로필 이미지 (388x388~1080x1080, 1:1 비율 권장, png, 최대 1MB) |
| brandBackground | string <binary> | 필수 | 백그라운드 이미지 (388x388~1080x1080, jpg/png, 최대 1MB) |
| mainMdn | string | 필수 | 대표 발신번호 (chatbots 에 포함되어 있어야 함) |
| chatbots | array<object> | 필수 | 등록할 챗봇 정보 (최대 1000개) |
| └mdn | string | 필수 | 등록할 발신번호 (국가번호 생략) |
| └subTitle | string | 필수 | 챗봇 명 |
| └rcsReply | string | 필수 | 수신 모드 (SMS MO:0 / RCS Postback:1) = 0 | 1 |
| └subnum | string | — | 챗봇 ID (A2P 의 경우 발신번호와 동일) |
| └display | string | — | 전시 여부 |
| └service | string | — | A2P/CHAT 서비스 유형 |
| └webhook | string | — | service=chat 시 필수 (URL) |
| subNumCertificate | string <binary> | 필수 | 통신서비스 이용증명원 파일 |
curl -X POST "{baseUrl}/rcsapi/v1/corp/brand/create" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"clientId": "string",
"clientSecret": "string",
"regBrand": {
"name": "string",
"description": "string",
"tel": "string",
"categoryId": "string",
"subCategoryId": "string",
"categoryOpt": "string",
"zipCode": "string",
"roadAddress": "string",
"detailAddress": "string",
"email": "string",
"webSiteUrl": "string",
"menus": [
{
"buttonType": "call",
"applink": {
"packageName": "string",
"action": "string",
"uri": "string"
},
"weblink": "string"
}
]
},
"brandProfile": "{binary}",
"brandBackground": "{binary}",
"mainMdn": "string",
"chatbots": [
{
"mdn": "string",
"subTitle": "string",
"rcsReply": "0",
"subnum": "string",
"display": "string",
"service": "string",
"webhook": "string"
}
],
"subNumCertificate": "{binary}"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | — |
| └brandId | string | — | 발급된 브랜드 ID |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"brandId": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}브랜드 수정 승인 요청
기업관리자 계정으로 승인 이력이 없는 브랜드(검수 반려 또는 승인 요청 미진행 상태) 를 수정 승인 요청합니다.
이미 운영중인 브랜드의 정보를 수정하려면 운영중 브랜드 정보 수정 을 사용하세요.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| clientId | string | 필수 | BizCenter ID (기업관리자) |
| clientSecret | string | 필수 | API Key |
| regBrand | object | 필수 | 브랜드 등록·수정 공용 객체 |
| └name | string | 필수 | 브랜드 홈에 표시되는 브랜드 이름 |
| └description | string | 필수 | 브랜드 홈에 표시되는 브랜드 설명 |
| └tel | string | 필수 | 브랜드 홈 전화번호 (대표 발신번호와 별개) |
| └categoryId | string | 필수 | 브랜드 카테고리 ID |
| └subCategoryId | string | 필수 | 브랜드 하위 카테고리 ID |
| └categoryOpt | string | — | 검색용 키워드 임의 등록 |
| └zipCode | string | — | 우편번호 |
| └roadAddress | string | — | 도로명주소 |
| └detailAddress | string | — | 상세주소 |
| string | — | 이메일주소 | |
| └webSiteUrl | string | — | 홈페이지 주소 |
| └menus | array<object> | — | 메뉴 정보 (브랜드 홈에 최대 4개. |
| └buttonType | string | 필수 | 버튼 유형 = call | web | app | store | order | buy | tickets | moreinfo |
| └applink | object | — | APP Link 패키지 정보 객체 |
| └packageName | string | 필수 | APP 실행 패키지명 |
| └action | string | 필수 | APP 실행 Action |
| └uri | string | 필수 | APP 실행 URI |
| └weblink | string | — | call 외 모든 버튼의 Web URL (http:// 또는 https:// 로 시작) |
| brandProfile | string <binary> | 필수 | 프로필 이미지 (388x388~1080x1080, 1:1 비율 권장, png, 최대 1MB) |
| brandBackground | string <binary> | 필수 | 백그라운드 이미지 (388x388~1080x1080, jpg/png, 최대 1MB) |
| mainMdn | string | 필수 | 대표 발신번호 (chatbots 에 포함되어 있어야 함) |
| chatbots | array<object> | 필수 | 등록할 챗봇 정보 (최대 1000개) |
| └mdn | string | 필수 | 등록할 발신번호 (국가번호 생략) |
| └subTitle | string | 필수 | 챗봇 명 |
| └rcsReply | string | 필수 | 수신 모드 (SMS MO:0 / RCS Postback:1) = 0 | 1 |
| └subnum | string | — | 챗봇 ID (A2P 의 경우 발신번호와 동일) |
| └display | string | — | 전시 여부 |
| └service | string | — | A2P/CHAT 서비스 유형 |
| └webhook | string | — | service=chat 시 필수 (URL) |
| subNumCertificate | string <binary> | 필수 | 통신서비스 이용증명원 파일 |
| brandId | string | 필수 | 수정 대상 브랜드 ID |
curl -X POST "{baseUrl}/rcsapi/v1/corp/brand/update" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"clientId": "string",
"clientSecret": "string",
"regBrand": {
"name": "string",
"description": "string",
"tel": "string",
"categoryId": "string",
"subCategoryId": "string",
"categoryOpt": "string",
"zipCode": "string",
"roadAddress": "string",
"detailAddress": "string",
"email": "string",
"webSiteUrl": "string",
"menus": [
{
"buttonType": "call",
"applink": {
"packageName": "string",
"action": "string",
"uri": "string"
},
"weblink": "string"
}
]
},
"brandProfile": "{binary}",
"brandBackground": "{binary}",
"mainMdn": "string",
"chatbots": [
{
"mdn": "string",
"subTitle": "string",
"rcsReply": "0",
"subnum": "string",
"display": "string",
"service": "string",
"webhook": "string"
}
],
"subNumCertificate": "{binary}",
"brandId": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | — |
| └brandId | string | — | 발급된 브랜드 ID |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"brandId": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}운영중 브랜드 정보 수정
기업관리자·기업담당자 계정으로 현재 운영 중인 브랜드의 정보를 수정합니다.
브랜드명 또는 프로필 이미지가 수정되면 재 승인이 필요하며, 상태가 승인대기로 변경됩니다.
brandBackground 제거 방법 — 등록되어 있는 백그라운드 이미지를 제거하려면 파일 없이brandBackgroundform key 만 전송합니다.
등록 엔드포인트와 달리 chatbots / subNumCertificate 를 받지 않으며, personId 가 필수입니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| clientId | string | 필수 | BizCenter ID (기업관리자/기업담당자) |
| clientSecret | string | 필수 | API Key |
| brandId | string | 필수 | 수정 대상 브랜드 ID |
| personId | string | 필수 | 브랜드 관리자 ID (=기업관리자) |
| regBrand | object | 필수 | 브랜드 등록·수정 공용 객체 |
| └name | string | 필수 | 브랜드 홈에 표시되는 브랜드 이름 |
| └description | string | 필수 | 브랜드 홈에 표시되는 브랜드 설명 |
| └tel | string | 필수 | 브랜드 홈 전화번호 (대표 발신번호와 별개) |
| └categoryId | string | 필수 | 브랜드 카테고리 ID |
| └subCategoryId | string | 필수 | 브랜드 하위 카테고리 ID |
| └categoryOpt | string | — | 검색용 키워드 임의 등록 |
| └zipCode | string | — | 우편번호 |
| └roadAddress | string | — | 도로명주소 |
| └detailAddress | string | — | 상세주소 |
| string | — | 이메일주소 | |
| └webSiteUrl | string | — | 홈페이지 주소 |
| └menus | array<object> | — | 메뉴 정보 (브랜드 홈에 최대 4개. |
| └buttonType | string | 필수 | 버튼 유형 = call | web | app | store | order | buy | tickets | moreinfo |
| └applink | object | — | APP Link 패키지 정보 객체 |
| └packageName | string | 필수 | APP 실행 패키지명 |
| └action | string | 필수 | APP 실행 Action |
| └uri | string | 필수 | APP 실행 URI |
| └weblink | string | — | call 외 모든 버튼의 Web URL (http:// 또는 https:// 로 시작) |
| brandProfile | string <binary> | 필수 | 프로필 이미지 (388x388~1080x1080, 1:1 비율 권장, png, 최대 1MB) |
| brandBackground | string <binary> | 필수 | 백그라운드 이미지 (388x388~1080x1080, jpg/png, 최대 1MB). 파일 없이 form key 만 전송 시 제거 |
| mainMdn | string | 필수 | 대표 발신번호 (chatbots 에 포함되어 있어야 함) |
curl -X POST "{baseUrl}/rcsapi/v1/corp/brand-allowed/update" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"clientId": "string",
"clientSecret": "string",
"brandId": "string",
"personId": "string",
"regBrand": {
"name": "string",
"description": "string",
"tel": "string",
"categoryId": "string",
"subCategoryId": "string",
"categoryOpt": "string",
"zipCode": "string",
"roadAddress": "string",
"detailAddress": "string",
"email": "string",
"webSiteUrl": "string",
"menus": [
{
"buttonType": "call",
"applink": {
"packageName": "string",
"action": "string",
"uri": "string"
},
"weblink": "string"
}
]
},
"brandProfile": "{binary}",
"brandBackground": "{binary}",
"mainMdn": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | allOf | — | — |
| └name | string | 필수 | 브랜드 홈에 표시되는 브랜드 이름 |
| └description | string | 필수 | 브랜드 홈에 표시되는 브랜드 설명 |
| └tel | string | 필수 | 브랜드 홈 전화번호 (대표 발신번호와 별개) |
| └categoryId | string | 필수 | 브랜드 카테고리 ID |
| └subCategoryId | string | 필수 | 브랜드 하위 카테고리 ID |
| └categoryOpt | string | — | 검색용 키워드 임의 등록 |
| └zipCode | string | — | 우편번호 |
| └roadAddress | string | — | 도로명주소 |
| └detailAddress | string | — | 상세주소 |
| string | — | 이메일주소 | |
| └webSiteUrl | string | — | 홈페이지 주소 |
| └menus | array<object> | — | 메뉴 정보 (브랜드 홈에 최대 4개. |
| └buttonType | string | 필수 | 버튼 유형 = call | web | app | store | order | buy | tickets | moreinfo |
| └applink | object | — | APP Link 패키지 정보 객체 |
| └packageName | string | 필수 | APP 실행 패키지명 |
| └action | string | 필수 | APP 실행 Action |
| └uri | string | 필수 | APP 실행 URI |
| └weblink | string | — | call 외 모든 버튼의 Web URL (http:// 또는 https:// 로 시작) |
| └brandId | string | — | — |
| └brandKey | string | — | — |
| └status | string | — | 브랜드 상태 |
| └categoryName | string | — | — |
| └subCategoryName | string | — | — |
| └mediaurl | array<object> | — | 미디어 정보 (fieldId / typeName / url) |
| └fieldId | string | — | — |
| └typeName | string | — | — |
| └url | string | — | — |
| └registerDate | string | — | — |
| └updateDate | string | — | — |
| └approvalDate | string | — | — |
| └chatbotDate | string | — | — |
| └messagebaseDate | string | — | — |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"name": "string",
"description": "string",
"tel": "string",
"categoryId": "string",
"subCategoryId": "string",
"categoryOpt": "string",
"zipCode": "string",
"roadAddress": "string",
"detailAddress": "string",
"email": "string",
"webSiteUrl": "string",
"menus": [
{
"buttonType": "call",
"applink": {
"packageName": "string",
"action": "string",
"uri": "string"
},
"weblink": "string"
}
],
"brandId": "string",
"brandKey": "string",
"status": "string",
"categoryName": "string",
"subCategoryName": "string",
"mediaurl": [
{
"fieldId": "string",
"typeName": "string",
"url": "string"
}
],
"registerDate": "string",
"updateDate": "string",
"approvalDate": "string",
"chatbotDate": "string",
"messagebaseDate": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}브랜드 삭제 요청 (승인 이력 없음)
기업관리자 계정으로 승인 이력이 없는 브랜드의 삭제를 요청합니다.
승인된(운영 중) 브랜드를 삭제하려면 승인된 브랜드 삭제 를 사용하세요.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| clientId | string | 필수 | BizCenter ID (기업관리자) |
| clientSecret | string | 필수 | API Key |
| brandId | string | 필수 | 삭제 대상 브랜드 ID |
curl -X POST "{baseUrl}/rcsapi/v1/corp/brand/remove" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"clientId": "string",
"clientSecret": "string",
"brandId": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | — |
| └brandId | string | — | 발급된 브랜드 ID |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"brandId": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}승인된 브랜드 삭제 요청
기업관리자 계정으로 승인 후 사용 중인 브랜드의 삭제를 요청합니다.
⚠️ 삭제 조건:
- 토큰 발급 계정과
personId가 동일해야 함brandId에 대한 브랜드 관리자 권한 보유- 반려/저장 상태는 즉시 삭제 가능
- 승인 후 사용 중인 브랜드는 등록된 발신번호·템플릿을 먼저 삭제해야 처리됨
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| clientId | string | 필수 | BizCenter ID (기업관리자) |
| clientSecret | string | 필수 | API Key |
| brandId | string | 필수 | 삭제 대상 브랜드 ID |
| personId | string | 필수 | 브랜드 관리자 ID (=기업관리자) |
curl -X POST "{baseUrl}/rcsapi/v1/corp/brand-allowed/remove" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"clientId": "string",
"clientSecret": "string",
"brandId": "string",
"personId": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | — |
| └brandId | string | — | 발급된 브랜드 ID |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"brandId": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}브랜드 상세 내용 조회
기업관리자/기업담당자 계정으로 브랜드의 상세 내용을 조회합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| clientId | string | 필수 | BizCenter ID |
| clientSecret | string | 필수 | API Key |
| personId | string | 필수 | 브랜드 관리자 ID |
| brandId | string | 필수 | 브랜드 ID |
curl -X POST "{baseUrl}/rcsapi/v1/corp/brand/info" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"clientId": "string",
"clientSecret": "string",
"personId": "string",
"brandId": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | allOf | — | — |
| └name | string | 필수 | 브랜드 홈에 표시되는 브랜드 이름 |
| └description | string | 필수 | 브랜드 홈에 표시되는 브랜드 설명 |
| └tel | string | 필수 | 브랜드 홈 전화번호 (대표 발신번호와 별개) |
| └categoryId | string | 필수 | 브랜드 카테고리 ID |
| └subCategoryId | string | 필수 | 브랜드 하위 카테고리 ID |
| └categoryOpt | string | — | 검색용 키워드 임의 등록 |
| └zipCode | string | — | 우편번호 |
| └roadAddress | string | — | 도로명주소 |
| └detailAddress | string | — | 상세주소 |
| string | — | 이메일주소 | |
| └webSiteUrl | string | — | 홈페이지 주소 |
| └menus | array<object> | — | 메뉴 정보 (브랜드 홈에 최대 4개. |
| └buttonType | string | 필수 | 버튼 유형 = call | web | app | store | order | buy | tickets | moreinfo |
| └applink | object | — | APP Link 패키지 정보 객체 |
| └packageName | string | 필수 | APP 실행 패키지명 |
| └action | string | 필수 | APP 실행 Action |
| └uri | string | 필수 | APP 실행 URI |
| └weblink | string | — | call 외 모든 버튼의 Web URL (http:// 또는 https:// 로 시작) |
| └brandId | string | — | — |
| └brandKey | string | — | — |
| └status | string | — | 브랜드 상태 |
| └categoryName | string | — | — |
| └subCategoryName | string | — | — |
| └mediaurl | array<object> | — | 미디어 정보 (fieldId / typeName / url) |
| └fieldId | string | — | — |
| └typeName | string | — | — |
| └url | string | — | — |
| └registerDate | string | — | — |
| └updateDate | string | — | — |
| └approvalDate | string | — | — |
| └chatbotDate | string | — | — |
| └messagebaseDate | string | — | — |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"name": "string",
"description": "string",
"tel": "string",
"categoryId": "string",
"subCategoryId": "string",
"categoryOpt": "string",
"zipCode": "string",
"roadAddress": "string",
"detailAddress": "string",
"email": "string",
"webSiteUrl": "string",
"menus": [
{
"buttonType": "call",
"applink": {
"packageName": "string",
"action": "string",
"uri": "string"
},
"weblink": "string"
}
],
"brandId": "string",
"brandKey": "string",
"status": "string",
"categoryName": "string",
"subCategoryName": "string",
"mediaurl": [
{
"fieldId": "string",
"typeName": "string",
"url": "string"
}
],
"registerDate": "string",
"updateDate": "string",
"approvalDate": "string",
"chatbotDate": "string",
"messagebaseDate": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}브랜드 카테고리 조회
브랜드 등록 시 사용 가능한 카테고리 목록을 조회합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| clientId | string | 필수 | — |
| clientSecret | string | 필수 | — |
curl -X POST "{baseUrl}/rcsapi/v1/corp/brand/categories" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"clientId": "string",
"clientSecret": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | array<object> | — | — |
| └categoryId | string | — | 브랜드 카테고리 ID |
| └categoryName | string | — | 브랜드 카테고리 명 |
| └subCategories | array<object> | — | 하위 카테고리 배열 |
| └subCategoryId | string | — | — |
| └subCategoryName | string | — | — |
| └updateDate | string | — | 카테고리 수정 일자 |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": [
{
"categoryId": "string",
"categoryName": "string",
"subCategories": [
{
"subCategoryId": "string",
"subCategoryName": "string"
}
],
"updateDate": "string"
}
],
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}권한 등록
브랜드 관리자 권한을 가진 기업관리자 계정으로 브랜드의 부 관리자 또는 대행사 권한을 등록합니다.
권한 상태 (status)
| 상태 | 의미 |
|---|---|
Waiting |
브랜드 운영권한 신청 후 브랜드 관리자 승인 대기 |
Processing |
권한 정보를 이통3사에 동기화 중 |
Ok |
권한 상태 정상 |
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| clientId | string | 필수 | BizCenter ID |
| clientSecret | string | 필수 | API Key |
| brandId | string | 필수 | 브랜드 ID |
| personId | string | 필수 | 브랜드 관리자 ID |
| regPrivileges | array<object> | 필수 | 기업관리자/기업담당자 또는 대행사 정보 배열 |
| └id | string | 필수 | 기업관리자/기업담당자/대행사 ID |
| └privilegeType | string | 필수 | 권한 유형 (위임 시 Manager 고정) = Manager | SubManager | Agency |
curl -X POST "{baseUrl}/rcsapi/v1/corp/brand/privilege/create" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"clientId": "string",
"clientSecret": "string",
"brandId": "string",
"personId": "string",
"regPrivileges": [
{
"id": "string",
"privilegeType": "Manager"
}
]
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | array<object> | — | 권한 정보 배열 |
| └id | string | — | 대상 ID |
| └privilegeType | string | — | = Manager | SubManager | Agency |
| └status | string | — | 권한 상태 = Waiting | Processing | Ok |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": [
{
"id": "string",
"privilegeType": "Manager",
"status": "Waiting"
}
],
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}권한 위임
브랜드 관리자 권한을 다른 기업관리자에게 위임합니다.
위임 시 기존 브랜드 관리자는 자동으로 부관리자로 변경됩니다.
regPrivilege.privilegeType은Manager로 고정합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| clientId | string | 필수 | BizCenter ID |
| clientSecret | string | 필수 | API Key |
| brandId | string | 필수 | 브랜드 ID |
| personId | string | 필수 | 브랜드 관리자 ID |
| regPrivilege | object | 필수 | 권한 대상 정보 |
| └id | string | 필수 | 기업관리자/기업담당자/대행사 ID |
| └privilegeType | string | 필수 | 권한 유형 (위임 시 Manager 고정) = Manager | SubManager | Agency |
curl -X POST "{baseUrl}/rcsapi/v1/corp/brand/privilege/update" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"clientId": "string",
"clientSecret": "string",
"brandId": "string",
"personId": "string",
"regPrivilege": {
"id": "string",
"privilegeType": "Manager"
}
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | array<object> | — | 권한 정보 배열 |
| └id | string | — | 대상 ID |
| └privilegeType | string | — | = Manager | SubManager | Agency |
| └status | string | — | 권한 상태 = Waiting | Processing | Ok |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": [
{
"id": "string",
"privilegeType": "Manager",
"status": "Waiting"
}
],
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}권한 삭제
브랜드 부관리자, 대행사 권한 중 지정 대상을 삭제합니다.
⚠️ 브랜드 관리자는 삭제 불가. 브랜드 관리자를 변경하려면 권한 위임 을 사용하세요.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| clientId | string | 필수 | — |
| clientSecret | string | 필수 | — |
| brandId | string | 필수 | 브랜드 ID |
| personId | string | 필수 | 브랜드 관리자 ID |
| id | string | 필수 | 삭제 대상 부관리자/대행사 ID |
curl -X POST "{baseUrl}/rcsapi/v1/corp/brand/privilege/remove" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"clientId": "string",
"clientSecret": "string",
"brandId": "string",
"personId": "string",
"id": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | array<object> | — | 권한 정보 배열 |
| └id | string | — | 대상 ID |
| └privilegeType | string | — | = Manager | SubManager | Agency |
| └status | string | — | 권한 상태 = Waiting | Processing | Ok |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": [
{
"id": "string",
"privilegeType": "Manager",
"status": "Waiting"
}
],
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}권한 조회
브랜드에 등록된 운영 권한 정보를 조회합니다.
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| clientId | string | 필수 | — |
| clientSecret | string | 필수 | — |
| brandId | string | 필수 | 브랜드 ID |
| personId | string | 필수 | 브랜드 관리자 ID |
curl -X POST "{baseUrl}/rcsapi/v1/corp/brand/privilege/list" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"clientId": "string",
"clientSecret": "string",
"brandId": "string",
"personId": "string"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | array<object> | — | 권한 배열 |
| └id | string | — | 대상 ID |
| └privilegeType | string | — | = Manager | SubManager | Agency |
| └status | string | — | 권한 상태 = Waiting | Processing | Ok |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": [
{
"id": "string",
"privilegeType": "Manager",
"status": "Waiting"
}
],
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}대행사
광고 대행사가 자사 권한으로 호출하는 전용 엔드포인트 (1개) — RCS 포토 발송용 미디어 파일 등록.
대행사 전용 파일 등록
광고 대행사가 자사 권한으로 RCS 포토 발송용 미디어 파일을 등록합니다.
RCS 발송 시 대행사가 등록한 파일을 사용하려면, 발송 페이로드에
agencykey필드를 함께 전송해야 합니다.
일반 파일 등록과의 차이
| 구분 | 엔드포인트 | 사용 타입 | 지원 mimeType |
|---|---|---|---|
| 일반 사용자 | POST /rcsapi/v1/file/send |
chatbot / messagebase / send |
image/jpeg, image/png 등 |
| 대행사 | POST /rcsapi/v1/agency/file |
send 만 |
jpeg / png / gif / bmp |
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| file | string <binary> | 필수 | 업로드 파일 |
| fileId | string(64) | 필수 | 파일 ID (64byte) |
| mimeType | string | 필수 | Mime type — image/jpeg / image/png / image/gif / image/bmp = image/jpeg | image/png | image/gif | image/bmp |
| usageType | string | 필수 | 사용 타입 — send (대행사 전용은 send 만 지원) = send |
curl -X POST "{baseUrl}/rcsapi/v1/agency/file" \
-H "Authorization: Bearer {accessToken}" \
-H "Content-Type: application/json" \
-d '{
"file": "{binary}",
"fileId": "string",
"mimeType": "image/jpeg",
"usageType": "send"
}'| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| code | string | 필수 | — |
| message | string | — | — |
| data | object | — | 파일 상세 |
| └fileId | string | — | — |
| └mimeType | string | — | — |
| └usageType | string | — | = chatbot | messagebase | send |
| └status | string | — | 파일 상태 = ready | expired |
| └expiryDate | string | — | 유효 기간 |
| pagination | object | — | 페이지네이션 정보 |
| └limit | integer | 필수 | 조회 최대 건수 (기본 100, 최대 1000) |
| └offset | integer | 필수 | 시작 offset (기본 0) |
| └total | integer | 필수 | 총 개수 |
{
"code": "string",
"message": "string",
"data": {
"fileId": "string",
"mimeType": "string",
"usageType": "chatbot",
"status": "ready",
"expiryDate": "string"
},
"pagination": {
"limit": 100,
"offset": 0,
"total": 0
}
}