RAPIv1.2

비즈뿌리오 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})

인증 흐름

고객사비즈뿌리오 서버(rapi.bizppurio.com)① POST /rcsapi/v1/token — bizId + apiKey② accessToken(1시간) + refreshToken + expiresIn③ 후속 호출 — Authorization: Bearer {accessToken}④ 만료 직전 POST /rcsapi/v1/refresh_token — 재발급만료 직전 refreshToken 으로 access 재발급 (재로그인 불필요)

자세한 토큰 발급은 토큰 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

자원 의존 관계

브랜드챗봇chatbotId파일fileId메시지베이스messagebaseIdRCS 발송 시content.rcs.chatbotidRCS 발송 시media = "maapfile://{fileId}"RCS 발송 시content.rcs.messagebaseid

토큰

RAPI 는 bizId + apiKey 로 인증 토큰을 발급받은 뒤 후속 호출에 사용합니다.

  • 도메인: https://rapi.bizppurio.com/
  • 인증 토큰 발급 후 Authorization: Bearer {accessToken} 헤더 첨부
  • 만료 직전에 refreshToken 으로 재발급하도록 운영하세요.
post/rcsapi/v1/token

인증 토큰 생성

bizId + apiKey 를 본문에 담아 호출하여 RAPI 인증 토큰을 발급받습니다.

  • accessToken 은 후속 RAPI 호출 시 Authorization: Bearer {accessToken} 형식으로 첨부합니다.
  • refreshToken 은 토큰 재발급 호출에 사용합니다.
  • 만료 직전에 재발급하도록 운영하세요. 만료된 토큰은 후속 호출에서 인증 오류가 발생합니다.
요청 본문
파라미터타입필수설명
bizIdstring필수
비즈뿌리오 사용자 ID
apiKeystring필수
발급받은 API Key
curl -X POST "https://rapi.bizppurio.com/rcsapi/v1/token" \
  -H "Content-Type: application/json" \
  -d '{
  "bizId": "bizUserId001",
  "apiKey": "[발급 받은 API Key]"
}'
응답
200토큰 발급 성공
파라미터타입필수설명
codestring필수—
messagestring——
dataobject——
└accessTokenstring필수
인증 토큰
└expiresIninteger필수
만료 시간 (unixtime)
└refreshTokenstring필수
리프레시 토큰
응답 · 200
{
  "code": "200",
  "data": {
    "accessToken": "[인증 토큰]",
    "expiresIn": 1568694883,
    "refreshToken": "[리프레시 토큰]"
  }
}
post/rcsapi/v1/refresh_token

인증 토큰 재생성

만료되거나 만료 임박한 accessToken 을 refreshToken 으로 재발급합니다.
응답 구조는 토큰 생성 과 동일하며, 새로운 accessToken / expiresIn / refreshToken 이 발급됩니다.

요청 본문
파라미터타입필수설명
accessTokenstring필수
만료되거나 만료 임박한 인증 토큰
refreshTokenstring필수
인증 토큰 생성 시 받은 리프레시 토큰
curl -X POST "https://rapi.bizppurio.com/rcsapi/v1/refresh_token" \
  -H "Content-Type: application/json" \
  -d '{
  "accessToken": "string",
  "refreshToken": "string"
}'
응답
200재발급 성공
파라미터타입필수설명
codestring필수—
messagestring——
dataobject——
└accessTokenstring필수
인증 토큰
└expiresIninteger필수
만료 시간 (unixtime)
└refreshTokenstring필수
리프레시 토큰
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": {
    "accessToken": "string",
    "expiresIn": 0,
    "refreshToken": "string"
  }
}

브랜드

이미 BizCenter(RBC) 에 등록된 브랜드를 비즈뿌리오 파트너에 연동하고 상세 정보를 조회합니다.

브랜드 자체 등록·수정·삭제 승인은 기업 전용 브랜드 관리 에서 처리됩니다.

post/rcsapi/v1/brand/link

브랜드 연동

BizCenter(RBC) 에 등록된 브랜드를 현재 파트너에 연동합니다.

브랜드 자체 등록·수정·삭제 승인은 기업 전용 브랜드 관리 를 참고하세요.

요청 본문
파라미터타입필수설명
brandIdstring필수
BizCenter 에서 생성한 브랜드 ID
brandKeystring필수
BizCenter 에서 기업 관리자가 발급하여 대행사에 전달한 브랜드 Key
curl -X POST "{baseUrl}/rcsapi/v1/brand/link" \
  -H "Authorization: Bearer {accessToken}" \
  -H "Content-Type: application/json" \
  -d '{
  "brandId": "string",
  "brandKey": "string"
}'
응답
200연동 성공 — `data` 는 [브랜드 상세](#operation/rapiGetBrand) 와 동일한 객체
파라미터타입필수설명
codestring필수—
messagestring——
dataobject—
브랜드 상세
└brandIdstring—
브랜드 ID
└brandKeystring—
브랜드 Key
└partnerIdstring—
파트너 아이디
└namestring—
브랜드 명
└statusstring—
브랜드 상태
└registerDatestring—
브랜드 등록일시
└updateDatestring—
브랜드 최종 수정일시
└linkDatestring—
파트너 연동일시
└chatbotDatestring—
챗봇 최종 수정일시
└messagebaseDatestring—
템플릿 최종 수정일시
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "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
  }
}
get/rcsapi/v1/brand

브랜드 연동 상세 조회

해당 파트너와 연동된 브랜드를 조회합니다.

RAPI 는 대부분 POST 이지만 이 엔드포인트는 GET 입니다.

cURL
curl -X GET "{baseUrl}/rcsapi/v1/brand" \
  -H "Authorization: Bearer {accessToken}"
응답
200브랜드 상세
파라미터타입필수설명
codestring필수—
messagestring——
dataobject—
브랜드 상세
└brandIdstring—
브랜드 ID
└brandKeystring—
브랜드 Key
└partnerIdstring—
파트너 아이디
└namestring—
브랜드 명
└statusstring—
브랜드 상태
└registerDatestring—
브랜드 등록일시
└updateDatestring—
브랜드 최종 수정일시
└linkDatestring—
파트너 연동일시
└chatbotDatestring—
챗봇 최종 수정일시
└messagebaseDatestring—
템플릿 최종 수정일시
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "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 가 발급됩니다.

post/rcsapi/v1/brand/chatbot/create

챗봇 등록

브랜드 내에서 사용할 챗봇을 등록합니다. 등록된 챗봇은 브랜드 포털 관리자의 승인 후 사용 가능합니다.

A2P 챗봇의 경우 chatbotId 는 발신번호와 동일합니다. CHAT 서비스의 경우 별도 ID 가 발급됩니다.

요청 본문
파라미터타입필수설명
brandIdstring필수
BizCenter 에서 생성한 브랜드 ID
mdnstring필수
등록할 발신번호 (국가번호 생략)
rcsReplystring필수
수신모드 설정 — SMS MO:0 / RCS Postback:1
= 0 | 1
subTitlestring필수
챗봇 명
subNumCertificatestring <binary>필수
통신 서비스 이용 증명원 파일
displaystring—
전시 여부
servicestring—
A2P/CHAT 서비스 유형
subNumstring—
챗봇 ID (A2P 의 경우 발신번호와 동일)
webhookstring—
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"
}'
응답
200등록 성공
파라미터타입필수설명
codestring필수—
messagestring——
dataobject—
챗봇 요약 (목록용)
└chatbotIdstring—
챗봇 ID
└brandIdstring——
└subNumstring—
회신번호
└subTitlestring—
챗봇 명
└displaystring—
전시 상태
└isMainNumboolean—
대표번호 여부
└groupIdstring—
그룹 ID
└approvalResultstring—
승인 상태
└approvalDatestring—
챗봇 승인 일시
└registerDatestring—
챗봇 등록 일시
└updateDatestring—
챗봇 수정일시
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "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
  }
}
post/rcsapi/v1/brand/chatbot/update

챗봇 수정

챗봇을 수정합니다. 승인 상태에 따라 처리 여부가 결정됩니다 (저장 / 반려 / 승인 상태).

요청 본문
파라미터타입필수설명
brandIdstring필수
BizCenter 에서 생성한 브랜드 ID
mdnstring필수
등록할 발신번호 (국가번호 생략)
rcsReplystring필수
수신모드 설정 — SMS MO:0 / RCS Postback:1
= 0 | 1
subTitlestring필수
챗봇 명
subNumCertificatestring <binary>필수
통신 서비스 이용 증명원 파일
displaystring—
전시 여부
servicestring—
A2P/CHAT 서비스 유형
subNumstring—
챗봇 ID (A2P 의 경우 발신번호와 동일)
webhookstring—
service 가 chat 인 경우 필수 (URL)
chatbotIdstring필수
수정 대상 챗봇 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"
}'
응답
200수정 성공 — `data` 는 풀 필드 셋 (`approvalReason` / `botTcPage` / `mediaUrl` / `registerId` / `searchWeight` / `service` / `webhook` 포함)
파라미터타입필수설명
codestring필수—
messagestring——
dataallOf——
└chatbotIdstring—
챗봇 ID
└brandIdstring——
└subNumstring—
회신번호
└subTitlestring—
챗봇 명
└displaystring—
전시 상태
└isMainNumboolean—
대표번호 여부
└groupIdstring—
그룹 ID
└approvalResultstring—
승인 상태
└approvalDatestring—
챗봇 승인 일시
└registerDatestring—
챗봇 등록 일시
└updateDatestring—
챗봇 수정일시
└approvalReasonstring—
승인 사유
└botTcPagestring—
이용 약관 페이지 URL (수정 불가)
└mediaUrlarray<object>—
이미지 파일 ID / URL / 사용 유형 배열
└registerIdstring—
챗봇 등록 계정 ID
└updateIdstring—
챗봇 수정 계정 ID
└searchWeightstring—
검색 우선 순위 (수정 불가)
└servicestring—
A2P/CHAT 서비스 유형
└webhookstring—
CHAT 서비스 시 webhook URL
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "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
  }
}
post/rcsapi/v1/brand/chatbot/remove

챗봇 삭제

지정한 챗봇을 삭제합니다.

⚠️ 한번 삭제된 챗봇은 복원이 불가능하며, 동일한 ID 로 다시 생성할 수 없습니다. 삭제는 승인 상태에 따라 처리 여부가 결정됩니다 (저장 / 반려 / 승인).

요청 본문
파라미터타입필수설명
brandIdstring필수
BizCenter 에서 생성한 브랜드 ID
chatbotIdstring필수
삭제할 챗봇 ID
curl -X POST "{baseUrl}/rcsapi/v1/brand/chatbot/remove" \
  -H "Authorization: Bearer {accessToken}" \
  -H "Content-Type: application/json" \
  -d '{
  "brandId": "string",
  "chatbotId": "string"
}'
응답
200삭제 성공
파라미터타입필수설명
codestring필수—
messagestring——
dataobject——
└chatbotIdstring—
삭제된 챗봇 ID
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": {
    "chatbotId": "string"
  }
}
get/rcsapi/v1/brand/chatbot/list

챗봇 목록 조회

브랜드에 등록된 챗봇 목록을 페이지네이션으로 조회합니다.

cURL
curl -X GET "{baseUrl}/rcsapi/v1/brand/chatbot/list" \
  -H "Authorization: Bearer {accessToken}"
응답
200챗봇 목록
파라미터타입필수설명
codestring필수—
messagestring——
dataarray<object>——
└chatbotIdstring—
챗봇 ID
└brandIdstring——
└subNumstring—
회신번호
└subTitlestring—
챗봇 명
└displaystring—
전시 상태
└isMainNumboolean—
대표번호 여부
└groupIdstring—
그룹 ID
└approvalResultstring—
승인 상태
└approvalDatestring—
챗봇 승인 일시
└registerDatestring—
챗봇 등록 일시
└updateDatestring—
챗봇 수정일시
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "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
  }
}
get/rcsapi/v1/brand/chatbot/info

챗봇 상세 조회

지정 챗봇의 풀 필드 셋을 조회합니다. 응답 구조는 챗봇 수정 응답과 동일합니다.

cURL
curl -X GET "{baseUrl}/rcsapi/v1/brand/chatbot/info" \
  -H "Authorization: Bearer {accessToken}"
응답
200챗봇 상세
파라미터타입필수설명
codestring필수—
messagestring——
dataallOf——
└chatbotIdstring—
챗봇 ID
└brandIdstring——
└subNumstring—
회신번호
└subTitlestring—
챗봇 명
└displaystring—
전시 상태
└isMainNumboolean—
대표번호 여부
└groupIdstring—
그룹 ID
└approvalResultstring—
승인 상태
└approvalDatestring—
챗봇 승인 일시
└registerDatestring—
챗봇 등록 일시
└updateDatestring—
챗봇 수정일시
└approvalReasonstring—
승인 사유
└botTcPagestring—
이용 약관 페이지 URL (수정 불가)
└mediaUrlarray<object>—
이미지 파일 ID / URL / 사용 유형 배열
└registerIdstring—
챗봇 등록 계정 ID
└updateIdstring—
챗봇 수정 계정 ID
└searchWeightstring—
검색 우선 순위 (수정 불가)
└servicestring—
A2P/CHAT 서비스 유형
└webhookstring—
CHAT 서비스 시 webhook URL
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "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일 발송 가능합니다.

post/rcsapi/v1/file/send

파일 등록

RCS 메시지에서 사용할 Maap 미디어 파일을 등록합니다.

등록된 파일은 fileId 로 식별되며, RCS 발송 시 maapfile://{fileId} 형식으로 참조합니다.

이미지는 등록일로부터 365일 발송 가능합니다 (이후 자동 삭제). 운영 시 파일 ID 만료 관리가 필요합니다.

요청 본문
파라미터타입필수설명
filestring <binary>필수
업로드 파일
fileIdstring필수
파일 ID
mimeTypestring필수
Mime type (image/jpeg, image/png 등)
usageTypestring필수
사용 타입 — 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"
}'
응답
200등록 성공 — `data` 는 [파일 상세](#operation/rapiGetFile) 와 동일
파라미터타입필수설명
codestring필수—
messagestring——
dataobject—
파일 상세
└fileIdstring——
└mimeTypestring——
└usageTypestring—
= chatbot | messagebase | send
└statusstring—
파일 상태
= ready | expired
└expiryDatestring—
유효 기간
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": {
    "fileId": "string",
    "mimeType": "string",
    "usageType": "chatbot",
    "status": "ready",
    "expiryDate": "string"
  },
  "pagination": {
    "limit": 100,
    "offset": 0,
    "total": 0
  }
}
get/rcsapi/v1/file/info

파일 상세 조회

등록된 Maap 미디어 파일의 상세 정보를 통신사 별로 조회합니다.

cURL
curl -X GET "{baseUrl}/rcsapi/v1/file/info" \
  -H "Authorization: Bearer {accessToken}"
응답
200파일 상세
파라미터타입필수설명
codestring필수—
messagestring——
dataobject—
파일 상세
└fileIdstring——
└mimeTypestring——
└usageTypestring—
= chatbot | messagebase | send
└statusstring—
파일 상태
= ready | expired
└expiryDatestring—
유효 기간
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "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 메시지의 포맷·카드 수·버튼 수를 결정하는 식별자입니다.

post/rcsapi/v1/brand/msgbase/create

메시지베이스 등록

브랜드 내에서 사용할 메시지베이스(템플릿) 를 등록합니다. 등록된 메시지베이스는 브랜드 포털 관리자의 승인 후 사용 가능합니다.

formattedString 은 메시지베이스 양식 목록 또는 메시지베이스 유형 상세 에서 조회한 양식의 formattedString 을 사용해야 합니다.

요청 본문
파라미터타입필수설명
brandIdstring필수
브랜드 ID
custTmpltIdstring필수
사용자 지정 템플릿 ID (정규식 ^[0-9A-Za-z]{1,25}$)
messagebaseformIdstring필수
메시지베이스 폼 ID (정규식 ^[0-9A-Za-z]{1,10}$)
formattedStringobject필수
메시지베이스 포맷 (양식 조회 결과 사용)
tmpltNamestring필수
메시지베이스 명
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"
}'
응답
200등록 성공
파라미터타입필수설명
codestring필수—
messagestring——
dataobject——
└messagebaseIdstring—
메시지베이스 ID
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": {
    "messagebaseId": "string"
  }
}
post/rcsapi/v1/brand/msgbase/update

메시지베이스 수정

지정한 메시지베이스를 수정합니다.

⚠️ 승인 상태에 따라 처리 여부가 결정됩니다 (저장 / 반려 상태). 템플릿 수정 시 기존에 사용된 messagebaseformId 는 동일한 cardType(cell, description) 에 한해 변경 가능합니다.

요청 본문
파라미터타입필수설명
brandIdstring필수
브랜드 ID
custTmpltIdstring필수
사용자 지정 템플릿 ID (정규식 ^[0-9A-Za-z]{1,25}$)
messagebaseformIdstring필수
메시지베이스 폼 ID (정규식 ^[0-9A-Za-z]{1,10}$)
formattedStringobject필수
메시지베이스 포맷 (양식 조회 결과 사용)
tmpltNamestring필수
메시지베이스 명
messagebaseIdstring필수
수정 대상 메시지베이스 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"
}'
응답
200수정 성공
파라미터타입필수설명
codestring필수—
messagestring——
dataobject——
└messagebaseIdstring—
메시지베이스 ID
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": {
    "messagebaseId": "string"
  }
}
post/rcsapi/v1/brand/msgbase/remove

메시지베이스 삭제

지정한 메시지베이스를 삭제합니다.

⚠️ 한번 삭제된 메시지베이스는 복원이 불가능하며, 동일한 ID 로 다시 생성할 수 없습니다.

요청 본문
파라미터타입필수설명
brandIdstring필수
브랜드 ID
messagebaseIdstring필수
삭제 대상 메시지베이스 ID
curl -X POST "{baseUrl}/rcsapi/v1/brand/msgbase/remove" \
  -H "Authorization: Bearer {accessToken}" \
  -H "Content-Type: application/json" \
  -d '{
  "brandId": "string",
  "messagebaseId": "string"
}'
응답
200삭제 성공
파라미터타입필수설명
codestring필수—
messagestring——
dataobject——
└messagebaseIdstring—
메시지베이스 ID
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": {
    "messagebaseId": "string"
  }
}
get/rcsapi/v1/brand/msgbase/list

메시지베이스 목록 조회

브랜드에 등록된 메시지베이스 목록을 페이지네이션으로 조회합니다.

cURL
curl -X GET "{baseUrl}/rcsapi/v1/brand/msgbase/list" \
  -H "Authorization: Bearer {accessToken}"
응답
200메시지베이스 목록
파라미터타입필수설명
codestring필수—
messagestring——
dataarray<object>——
└messagebaseIdstring——
└messagebaseformIdstring——
└brandIdstring——
└groupIdstring——
└tmpltNamestring—
메시지베이스 명
└statusstring—
메시지베이스 상태
└approvalResultstring—
승인 상태
└approvalReasonstring—
승인 사유
└approvalDatestring—
승인 일시
└registerDatestring——
└registerIdstring——
└updateDatestring——
└updateIdstring——
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "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
  }
}
get/rcsapi/v1/brand/msgbase/info

메시지베이스 상세 조회

지정 메시지베이스의 풀 필드 셋을 조회합니다 (formattedString, attribute, cardType, params, guideInfo, policyInfo, spec 등 포함).

cURL
curl -X GET "{baseUrl}/rcsapi/v1/brand/msgbase/info" \
  -H "Authorization: Bearer {accessToken}"
응답
200메시지베이스 상세
파라미터타입필수설명
codestring필수—
messagestring——
dataallOf——
└messagebaseIdstring——
└messagebaseformIdstring——
└brandIdstring——
└groupIdstring——
└tmpltNamestring—
메시지베이스 명
└statusstring—
메시지베이스 상태
└approvalResultstring—
승인 상태
└approvalReasonstring—
승인 사유
└approvalDatestring—
승인 일시
└registerDatestring——
└registerIdstring——
└updateDatestring——
└updateIdstring——
└agencyIdstring—
대행사 ID
└attributearray<object>——
└cardTypestring—
카드 종류 (Cell / Description / Free)
└formattedStringobject—
메시지베이스 포맷
└guideInfoobject——
└inputTextstring——
└paramsarray<object>——
└policyInfoobject——
└specstring——
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "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
  }
}
get/rcsapi/v1/msgbaseform/list

메시지베이스 양식 목록 조회

오픈리치카드 템플릿 작성에 사용할 양식 목록을 조회합니다.

cURL
curl -X GET "{baseUrl}/rcsapi/v1/msgbaseform/list" \
  -H "Authorization: Bearer {accessToken}"
응답
200양식 목록
파라미터타입필수설명
codestring필수—
messagestring——
dataarray<object>——
└messagebaseformIdstring——
└formNamestring——
└cardTypestring——
└bizCategorystring——
└bizConditionarray<string>—
대상 업태 배열
└bizServicestring——
└registerDatestring——
└updateDatestring——
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "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
  }
}
get/rcsapi/v1/msgbaseform/info

메시지베이스 유형 상세 조회

지정 양식의 풀 필드 셋을 조회합니다. 응답의 formattedString 을 이용하여 브랜드용 메시지베이스를 등록 할 수 있습니다.

cURL
curl -X GET "{baseUrl}/rcsapi/v1/msgbaseform/info" \
  -H "Authorization: Bearer {accessToken}"
응답
200양식 상세
파라미터타입필수설명
codestring필수—
messagestring——
dataallOf——
└messagebaseformIdstring——
└formNamestring——
└cardTypestring——
└bizCategorystring——
└bizConditionarray<string>—
대상 업태 배열
└bizServicestring——
└registerDatestring——
└updateDatestring——
└formattedStringobject—
메시지베이스 포맷
└guideInfoobject——
└mediaUrlarray<object>——
└paramsarray<object>——
└policyInfoobject——
└productCodestring—
상품 코드 (sms / lms / mms 등)
└specstring——
응답 · 200
{
  "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"
  }
}
get/rcsapi/v1/msgbase/common/list

메시지베이스 조회 (이통사 기본 제공)

리치카드 규격의 SMS, LMS, MMS 용 메시지베이스(SS000000, SL000000, SMwT*, CMwM* 등) 를 조회합니다.

카드 종류

  • standalone
  • standalone media top
  • standalone horizontal
  • carousel medium
  • carousel small
cURL
curl -X GET "{baseUrl}/rcsapi/v1/msgbase/common/list" \
  -H "Authorization: Bearer {accessToken}"
응답
200이통사 기본 제공 메시지베이스 목록 — [메시지베이스 목록 조회](#operation/rapiListMessagebases) 와 동일 응답 구조
파라미터타입필수설명
codestring필수—
messagestring——
dataarray<object>——
└messagebaseIdstring——
└messagebaseformIdstring——
└brandIdstring——
└groupIdstring——
└tmpltNamestring—
메시지베이스 명
└statusstring—
메시지베이스 상태
└approvalResultstring—
승인 상태
└approvalReasonstring—
승인 사유
└approvalDatestring—
승인 일시
└registerDatestring——
└registerIdstring——
└updateDatestring——
└updateIdstring——
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "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
  }
}
get/rcsapi/v1/msgbase/common/info

메시지베이스 상세 조회 (이통사 기본 제공)

이통사가 기본 제공하는 메시지베이스의 풀 필드 셋을 조회합니다.

cURL
curl -X GET "{baseUrl}/rcsapi/v1/msgbase/common/info" \
  -H "Authorization: Bearer {accessToken}"
응답
200메시지베이스 상세 — [메시지베이스 상세 조회](#operation/rapiGetMessagebase) 와 동일 응답 구조
파라미터타입필수설명
codestring필수—
messagestring——
dataallOf——
└messagebaseIdstring——
└messagebaseformIdstring——
└brandIdstring——
└groupIdstring——
└tmpltNamestring—
메시지베이스 명
└statusstring—
메시지베이스 상태
└approvalResultstring—
승인 상태
└approvalReasonstring—
승인 사유
└approvalDatestring—
승인 일시
└registerDatestring——
└registerIdstring——
└updateDatestring——
└updateIdstring——
└agencyIdstring—
대행사 ID
└attributearray<object>——
└cardTypestring—
카드 종류 (Cell / Description / Free)
└formattedStringobject—
메시지베이스 포맷
└guideInfoobject——
└inputTextstring——
└paramsarray<object>——
└policyInfoobject——
└specstring——
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "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
  }
}
post/rcsapi/v1/brand/msgbase/v2/create

메시지베이스 등록 (v2)

브랜드 내에서 사용할 메시지베이스를 v2 규격으로 등록합니다. messagebaseformId 의 params 각 항목 중 템플릿에 표시될 내용을 body 로 입력하여 원하는 템플릿을 등록합니다.

등록된 메시지베이스는 RCS Biz Center 운영자의 승인 후 사용 가능합니다.

요청 본문
파라미터타입필수설명
brandIdstring필수
브랜드 ID
custTmpltIdstring필수
사용자 지정 템플릿 ID
messagebaseformIdstring필수
메시지베이스 폼 ID
tmpltNamestring(40)필수
메시지베이스 명
bodyarray<object>필수—
└lineIndexinteger—
라인 인덱스
└paramstring—
파라미터 키
└valuestring—
표시될 값
└decorationobject—
본문 항목 데코레이션
└backgroundstring——
└heightstring——
└textAlignmentstring——
└textColorstring——
└textSizestring——
└textStylestring——
buttonsarray<object>——
└suggestionsarray<object>——
└actionobject—
버튼 액션 정의
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": {}
        }
      ]
    }
  ]
}'
응답
200등록 성공
파라미터타입필수설명
codestring필수—
messagestring——
dataobject——
└messagebaseIdstring—
메시지베이스 ID
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": {
    "messagebaseId": "string"
  }
}
post/rcsapi/v1/brand/msgbase/v2/update

메시지베이스 수정 (v2)

메시지베이스의 ID 를 유지하면서 내용을 변경합니다. 수정 등록된 템플릿은 RCS Biz Center 운영자의 승인이 필요합니다.

지원 범위: 텍스트 템플릿(타이틀 선택형 / 타이틀 자유형), 이미지 템플릿, LMS 템플릿.

요청 본문
파라미터타입필수설명
brandIdstring필수
브랜드 ID
messagebaseIdstring필수
메시지베이스 ID
messagebaseformIdstring필수
메시지베이스 폼 ID
tmpltNamestring(40)필수
메시지베이스 명
bodyarray<object>필수—
└lineIndexinteger—
라인 인덱스
└paramstring—
파라미터 키
└valuestring—
표시될 값
└decorationobject—
본문 항목 데코레이션
└backgroundstring——
└heightstring——
└textAlignmentstring——
└textColorstring——
└textSizestring——
└textStylestring——
buttonsarray<object>——
└suggestionsarray<object>——
└actionobject—
버튼 액션 정의
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": {}
        }
      ]
    }
  ]
}'
응답
200수정 성공
파라미터타입필수설명
codestring필수—
messagestring——
dataobject——
└messagebaseIdstring—
메시지베이스 ID
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": {
    "messagebaseId": "string"
  }
}
post/rcsapi/v1/brand/msgbase/v2/file/create

이미지 템플릿용 파일 등록

이미지 템플릿에서 사용할 이미지 파일을 등록합니다.

파일을 먼저 등록해야 이미지 템플릿 등록 시 fileId 를 지정할 수 있습니다.

요청 본문
파라미터타입필수설명
brandIdstring필수
BizCenter 에서 생성한 브랜드 ID
filestring <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}"
}'
응답
200등록 성공 — `data.fileId` 발급
파라미터타입필수설명
codestring필수—
messagestring——
dataarray<object>——
└fileIdstring—
파일 ID
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": [
    {
      "fileId": "string"
    }
  ],
  "pagination": {
    "limit": 100,
    "offset": 0,
    "total": 0
  }
}
get/rcsapi/v1/brand/msgbase/v2/file/info

이미지 템플릿용 파일 정보 조회

이미지 템플릿용으로 등록한 이미지 파일 정보를 조회합니다.

지원 범위: 이미지 템플릿, LMS 템플릿.

cURL
curl -X GET "{baseUrl}/rcsapi/v1/brand/msgbase/v2/file/info" \
  -H "Authorization: Bearer {accessToken}"
응답
200파일 정보
파라미터타입필수설명
codestring필수—
messagestring——
dataarray<object>——
└fileIdstring——
└fileNamestring——
└imageWidthstring——
└imageHeightstring——
└urlstring——
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": [
    {
      "fileId": "string",
      "fileName": "string",
      "imageWidth": "string",
      "imageHeight": "string",
      "url": "string"
    }
  ],
  "pagination": {
    "limit": 100,
    "offset": 0,
    "total": 0
  }
}

기업 전용 브랜드

기업관리자 계정으로 브랜드 자체를 등록·수정·삭제·권한 위임할 수 있는 엔드포인트 (11개).

모든 엔드포인트는 기업관리자 권한이 필요합니다.

post/rcsapi/v1/corp/brand/create

브랜드 등록 승인

기업관리자 계정으로 등록된 브랜드 승인을 요청합니다.

1개 이상의 발신번호를 반드시 함께 등록해야 하며, 브랜드 프로필 이미지·발신번호 통신서비스 가입증명원이 필요합니다.

brandBackground 제거 방법 — 등록되어 있는 백그라운드 이미지를 제거하려면 파일 없이 brandBackground form key 만 전송합니다.

요청 본문
파라미터타입필수설명
clientIdstring필수
BizCenter ID (기업관리자)
clientSecretstring필수
API Key
regBrandobject필수
브랜드 등록·수정 공용 객체
└namestring필수
브랜드 홈에 표시되는 브랜드 이름
└descriptionstring필수
브랜드 홈에 표시되는 브랜드 설명
└telstring필수
브랜드 홈 전화번호 (대표 발신번호와 별개)
└categoryIdstring필수
브랜드 카테고리 ID
└subCategoryIdstring필수
브랜드 하위 카테고리 ID
└categoryOptstring—
검색용 키워드 임의 등록
└zipCodestring—
우편번호
└roadAddressstring—
도로명주소
└detailAddressstring—
상세주소
└emailstring—
이메일주소
└webSiteUrlstring—
홈페이지 주소
└menusarray<object>—

메뉴 정보 (브랜드 홈에 최대 4개. chat 기본 등록 → 지정 가능 최대 3개.
call 미포함 + 2개 이하 시 call 자동 추가)

└buttonTypestring필수
버튼 유형
= call | web | app | store | order | buy | tickets | moreinfo
└applinkobject—
APP Link 패키지 정보 객체
└packageNamestring필수
APP 실행 패키지명
└actionstring필수
APP 실행 Action
└uristring필수
APP 실행 URI
└weblinkstring—
call 외 모든 버튼의 Web URL (http:// 또는 https:// 로 시작)
brandProfilestring <binary>필수
프로필 이미지 (388x388~1080x1080, 1:1 비율 권장, png, 최대 1MB)
brandBackgroundstring <binary>필수
백그라운드 이미지 (388x388~1080x1080, jpg/png, 최대 1MB)
mainMdnstring필수
대표 발신번호 (chatbots 에 포함되어 있어야 함)
chatbotsarray<object>필수
등록할 챗봇 정보 (최대 1000개)
└mdnstring필수
등록할 발신번호 (국가번호 생략)
└subTitlestring필수
챗봇 명
└rcsReplystring필수
수신 모드 (SMS MO:0 / RCS Postback:1)
= 0 | 1
└subnumstring—
챗봇 ID (A2P 의 경우 발신번호와 동일)
└displaystring—
전시 여부
└servicestring—
A2P/CHAT 서비스 유형
└webhookstring—
service=chat 시 필수 (URL)
subNumCertificatestring <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}"
}'
응답
200등록 성공 — `data.brandId` 발급
파라미터타입필수설명
codestring필수—
messagestring——
dataobject——
└brandIdstring—
발급된 브랜드 ID
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": {
    "brandId": "string"
  },
  "pagination": {
    "limit": 100,
    "offset": 0,
    "total": 0
  }
}
post/rcsapi/v1/corp/brand/update

브랜드 수정 승인 요청

기업관리자 계정으로 승인 이력이 없는 브랜드(검수 반려 또는 승인 요청 미진행 상태) 를 수정 승인 요청합니다.

이미 운영중인 브랜드의 정보를 수정하려면 운영중 브랜드 정보 수정 을 사용하세요.

요청 본문
파라미터타입필수설명
clientIdstring필수
BizCenter ID (기업관리자)
clientSecretstring필수
API Key
regBrandobject필수
브랜드 등록·수정 공용 객체
└namestring필수
브랜드 홈에 표시되는 브랜드 이름
└descriptionstring필수
브랜드 홈에 표시되는 브랜드 설명
└telstring필수
브랜드 홈 전화번호 (대표 발신번호와 별개)
└categoryIdstring필수
브랜드 카테고리 ID
└subCategoryIdstring필수
브랜드 하위 카테고리 ID
└categoryOptstring—
검색용 키워드 임의 등록
└zipCodestring—
우편번호
└roadAddressstring—
도로명주소
└detailAddressstring—
상세주소
└emailstring—
이메일주소
└webSiteUrlstring—
홈페이지 주소
└menusarray<object>—

메뉴 정보 (브랜드 홈에 최대 4개. chat 기본 등록 → 지정 가능 최대 3개.
call 미포함 + 2개 이하 시 call 자동 추가)

└buttonTypestring필수
버튼 유형
= call | web | app | store | order | buy | tickets | moreinfo
└applinkobject—
APP Link 패키지 정보 객체
└packageNamestring필수
APP 실행 패키지명
└actionstring필수
APP 실행 Action
└uristring필수
APP 실행 URI
└weblinkstring—
call 외 모든 버튼의 Web URL (http:// 또는 https:// 로 시작)
brandProfilestring <binary>필수
프로필 이미지 (388x388~1080x1080, 1:1 비율 권장, png, 최대 1MB)
brandBackgroundstring <binary>필수
백그라운드 이미지 (388x388~1080x1080, jpg/png, 최대 1MB)
mainMdnstring필수
대표 발신번호 (chatbots 에 포함되어 있어야 함)
chatbotsarray<object>필수
등록할 챗봇 정보 (최대 1000개)
└mdnstring필수
등록할 발신번호 (국가번호 생략)
└subTitlestring필수
챗봇 명
└rcsReplystring필수
수신 모드 (SMS MO:0 / RCS Postback:1)
= 0 | 1
└subnumstring—
챗봇 ID (A2P 의 경우 발신번호와 동일)
└displaystring—
전시 여부
└servicestring—
A2P/CHAT 서비스 유형
└webhookstring—
service=chat 시 필수 (URL)
subNumCertificatestring <binary>필수
통신서비스 이용증명원 파일
brandIdstring필수
수정 대상 브랜드 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"
}'
응답
200수정 성공 — `data.brandId` 반환
파라미터타입필수설명
codestring필수—
messagestring——
dataobject——
└brandIdstring—
발급된 브랜드 ID
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": {
    "brandId": "string"
  },
  "pagination": {
    "limit": 100,
    "offset": 0,
    "total": 0
  }
}
post/rcsapi/v1/corp/brand-allowed/update

운영중 브랜드 정보 수정

기업관리자·기업담당자 계정으로 현재 운영 중인 브랜드의 정보를 수정합니다.

브랜드명 또는 프로필 이미지가 수정되면 재 승인이 필요하며, 상태가 승인대기로 변경됩니다.
brandBackground 제거 방법 — 등록되어 있는 백그라운드 이미지를 제거하려면 파일 없이 brandBackground form key 만 전송합니다.

등록 엔드포인트와 달리 chatbots / subNumCertificate 를 받지 않으며, personId 가 필수입니다.

요청 본문
파라미터타입필수설명
clientIdstring필수
BizCenter ID (기업관리자/기업담당자)
clientSecretstring필수
API Key
brandIdstring필수
수정 대상 브랜드 ID
personIdstring필수
브랜드 관리자 ID (=기업관리자)
regBrandobject필수
브랜드 등록·수정 공용 객체
└namestring필수
브랜드 홈에 표시되는 브랜드 이름
└descriptionstring필수
브랜드 홈에 표시되는 브랜드 설명
└telstring필수
브랜드 홈 전화번호 (대표 발신번호와 별개)
└categoryIdstring필수
브랜드 카테고리 ID
└subCategoryIdstring필수
브랜드 하위 카테고리 ID
└categoryOptstring—
검색용 키워드 임의 등록
└zipCodestring—
우편번호
└roadAddressstring—
도로명주소
└detailAddressstring—
상세주소
└emailstring—
이메일주소
└webSiteUrlstring—
홈페이지 주소
└menusarray<object>—

메뉴 정보 (브랜드 홈에 최대 4개. chat 기본 등록 → 지정 가능 최대 3개.
call 미포함 + 2개 이하 시 call 자동 추가)

└buttonTypestring필수
버튼 유형
= call | web | app | store | order | buy | tickets | moreinfo
└applinkobject—
APP Link 패키지 정보 객체
└packageNamestring필수
APP 실행 패키지명
└actionstring필수
APP 실행 Action
└uristring필수
APP 실행 URI
└weblinkstring—
call 외 모든 버튼의 Web URL (http:// 또는 https:// 로 시작)
brandProfilestring <binary>필수
프로필 이미지 (388x388~1080x1080, 1:1 비율 권장, png, 최대 1MB)
brandBackgroundstring <binary>필수
백그라운드 이미지 (388x388~1080x1080, jpg/png, 최대 1MB). 파일 없이 form key 만 전송 시 제거
mainMdnstring필수
대표 발신번호 (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"
}'
응답
200수정 성공 — `data` 는 [브랜드 상세](#operation/rapiCorpGetBrand) 의 풀 필드 셋
파라미터타입필수설명
codestring필수—
messagestring——
dataallOf——
└namestring필수
브랜드 홈에 표시되는 브랜드 이름
└descriptionstring필수
브랜드 홈에 표시되는 브랜드 설명
└telstring필수
브랜드 홈 전화번호 (대표 발신번호와 별개)
└categoryIdstring필수
브랜드 카테고리 ID
└subCategoryIdstring필수
브랜드 하위 카테고리 ID
└categoryOptstring—
검색용 키워드 임의 등록
└zipCodestring—
우편번호
└roadAddressstring—
도로명주소
└detailAddressstring—
상세주소
└emailstring—
이메일주소
└webSiteUrlstring—
홈페이지 주소
└menusarray<object>—

메뉴 정보 (브랜드 홈에 최대 4개. chat 기본 등록 → 지정 가능 최대 3개.
call 미포함 + 2개 이하 시 call 자동 추가)

└buttonTypestring필수
버튼 유형
= call | web | app | store | order | buy | tickets | moreinfo
└applinkobject—
APP Link 패키지 정보 객체
└packageNamestring필수
APP 실행 패키지명
└actionstring필수
APP 실행 Action
└uristring필수
APP 실행 URI
└weblinkstring—
call 외 모든 버튼의 Web URL (http:// 또는 https:// 로 시작)
└brandIdstring——
└brandKeystring——
└statusstring—
브랜드 상태
└categoryNamestring——
└subCategoryNamestring——
└mediaurlarray<object>—
미디어 정보 (fieldId / typeName / url)
└fieldIdstring——
└typeNamestring——
└urlstring——
└registerDatestring——
└updateDatestring——
└approvalDatestring——
└chatbotDatestring——
└messagebaseDatestring——
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "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
  }
}
post/rcsapi/v1/corp/brand/remove

브랜드 삭제 요청 (승인 이력 없음)

기업관리자 계정으로 승인 이력이 없는 브랜드의 삭제를 요청합니다.

승인된(운영 중) 브랜드를 삭제하려면 승인된 브랜드 삭제 를 사용하세요.

요청 본문
파라미터타입필수설명
clientIdstring필수
BizCenter ID (기업관리자)
clientSecretstring필수
API Key
brandIdstring필수
삭제 대상 브랜드 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"
}'
응답
200삭제 성공
파라미터타입필수설명
codestring필수—
messagestring——
dataobject——
└brandIdstring—
발급된 브랜드 ID
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": {
    "brandId": "string"
  },
  "pagination": {
    "limit": 100,
    "offset": 0,
    "total": 0
  }
}
post/rcsapi/v1/corp/brand-allowed/remove

승인된 브랜드 삭제 요청

기업관리자 계정으로 승인 후 사용 중인 브랜드의 삭제를 요청합니다.

⚠️ 삭제 조건:

  • 토큰 발급 계정과 personId 가 동일해야 함
  • brandId 에 대한 브랜드 관리자 권한 보유
  • 반려/저장 상태는 즉시 삭제 가능
  • 승인 후 사용 중인 브랜드는 등록된 발신번호·템플릿을 먼저 삭제해야 처리됨
요청 본문
파라미터타입필수설명
clientIdstring필수
BizCenter ID (기업관리자)
clientSecretstring필수
API Key
brandIdstring필수
삭제 대상 브랜드 ID
personIdstring필수
브랜드 관리자 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"
}'
응답
200삭제 성공
파라미터타입필수설명
codestring필수—
messagestring——
dataobject——
└brandIdstring—
발급된 브랜드 ID
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": {
    "brandId": "string"
  },
  "pagination": {
    "limit": 100,
    "offset": 0,
    "total": 0
  }
}
post/rcsapi/v1/corp/brand/info

브랜드 상세 내용 조회

기업관리자/기업담당자 계정으로 브랜드의 상세 내용을 조회합니다.

요청 본문
파라미터타입필수설명
clientIdstring필수
BizCenter ID
clientSecretstring필수
API Key
personIdstring필수
브랜드 관리자 ID
brandIdstring필수
브랜드 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"
}'
응답
200브랜드 상세
파라미터타입필수설명
codestring필수—
messagestring——
dataallOf——
└namestring필수
브랜드 홈에 표시되는 브랜드 이름
└descriptionstring필수
브랜드 홈에 표시되는 브랜드 설명
└telstring필수
브랜드 홈 전화번호 (대표 발신번호와 별개)
└categoryIdstring필수
브랜드 카테고리 ID
└subCategoryIdstring필수
브랜드 하위 카테고리 ID
└categoryOptstring—
검색용 키워드 임의 등록
└zipCodestring—
우편번호
└roadAddressstring—
도로명주소
└detailAddressstring—
상세주소
└emailstring—
이메일주소
└webSiteUrlstring—
홈페이지 주소
└menusarray<object>—

메뉴 정보 (브랜드 홈에 최대 4개. chat 기본 등록 → 지정 가능 최대 3개.
call 미포함 + 2개 이하 시 call 자동 추가)

└buttonTypestring필수
버튼 유형
= call | web | app | store | order | buy | tickets | moreinfo
└applinkobject—
APP Link 패키지 정보 객체
└packageNamestring필수
APP 실행 패키지명
└actionstring필수
APP 실행 Action
└uristring필수
APP 실행 URI
└weblinkstring—
call 외 모든 버튼의 Web URL (http:// 또는 https:// 로 시작)
└brandIdstring——
└brandKeystring——
└statusstring—
브랜드 상태
└categoryNamestring——
└subCategoryNamestring——
└mediaurlarray<object>—
미디어 정보 (fieldId / typeName / url)
└fieldIdstring——
└typeNamestring——
└urlstring——
└registerDatestring——
└updateDatestring——
└approvalDatestring——
└chatbotDatestring——
└messagebaseDatestring——
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "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
  }
}
post/rcsapi/v1/corp/brand/categories

브랜드 카테고리 조회

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

요청 본문
파라미터타입필수설명
clientIdstring필수—
clientSecretstring필수—
curl -X POST "{baseUrl}/rcsapi/v1/corp/brand/categories" \
  -H "Authorization: Bearer {accessToken}" \
  -H "Content-Type: application/json" \
  -d '{
  "clientId": "string",
  "clientSecret": "string"
}'
응답
200카테고리 목록
파라미터타입필수설명
codestring필수—
messagestring——
dataarray<object>——
└categoryIdstring—
브랜드 카테고리 ID
└categoryNamestring—
브랜드 카테고리 명
└subCategoriesarray<object>—
하위 카테고리 배열
└subCategoryIdstring——
└subCategoryNamestring——
└updateDatestring—
카테고리 수정 일자
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": [
    {
      "categoryId": "string",
      "categoryName": "string",
      "subCategories": [
        {
          "subCategoryId": "string",
          "subCategoryName": "string"
        }
      ],
      "updateDate": "string"
    }
  ],
  "pagination": {
    "limit": 100,
    "offset": 0,
    "total": 0
  }
}
post/rcsapi/v1/corp/brand/privilege/create

권한 등록

브랜드 관리자 권한을 가진 기업관리자 계정으로 브랜드의 부 관리자 또는 대행사 권한을 등록합니다.

권한 상태 (status)

상태 의미
Waiting 브랜드 운영권한 신청 후 브랜드 관리자 승인 대기
Processing 권한 정보를 이통3사에 동기화 중
Ok 권한 상태 정상
요청 본문
파라미터타입필수설명
clientIdstring필수
BizCenter ID
clientSecretstring필수
API Key
brandIdstring필수
브랜드 ID
personIdstring필수
브랜드 관리자 ID
regPrivilegesarray<object>필수
기업관리자/기업담당자 또는 대행사 정보 배열
└idstring필수
기업관리자/기업담당자/대행사 ID
└privilegeTypestring필수
권한 유형 (위임 시 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"
    }
  ]
}'
응답
200권한 등록 성공
파라미터타입필수설명
codestring필수—
messagestring——
dataarray<object>—
권한 정보 배열
└idstring—
대상 ID
└privilegeTypestring—
= Manager | SubManager | Agency
└statusstring—
권한 상태
= Waiting | Processing | Ok
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": [
    {
      "id": "string",
      "privilegeType": "Manager",
      "status": "Waiting"
    }
  ],
  "pagination": {
    "limit": 100,
    "offset": 0,
    "total": 0
  }
}
post/rcsapi/v1/corp/brand/privilege/update

권한 위임

브랜드 관리자 권한을 다른 기업관리자에게 위임합니다.

위임 시 기존 브랜드 관리자는 자동으로 부관리자로 변경됩니다. regPrivilege.privilegeType 은 Manager 로 고정합니다.

요청 본문
파라미터타입필수설명
clientIdstring필수
BizCenter ID
clientSecretstring필수
API Key
brandIdstring필수
브랜드 ID
personIdstring필수
브랜드 관리자 ID
regPrivilegeobject필수
권한 대상 정보
└idstring필수
기업관리자/기업담당자/대행사 ID
└privilegeTypestring필수
권한 유형 (위임 시 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"
  }
}'
응답
200위임 성공
파라미터타입필수설명
codestring필수—
messagestring——
dataarray<object>—
권한 정보 배열
└idstring—
대상 ID
└privilegeTypestring—
= Manager | SubManager | Agency
└statusstring—
권한 상태
= Waiting | Processing | Ok
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": [
    {
      "id": "string",
      "privilegeType": "Manager",
      "status": "Waiting"
    }
  ],
  "pagination": {
    "limit": 100,
    "offset": 0,
    "total": 0
  }
}
post/rcsapi/v1/corp/brand/privilege/remove

권한 삭제

브랜드 부관리자, 대행사 권한 중 지정 대상을 삭제합니다.

⚠️ 브랜드 관리자는 삭제 불가. 브랜드 관리자를 변경하려면 권한 위임 을 사용하세요.

요청 본문
파라미터타입필수설명
clientIdstring필수—
clientSecretstring필수—
brandIdstring필수
브랜드 ID
personIdstring필수
브랜드 관리자 ID
idstring필수
삭제 대상 부관리자/대행사 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"
}'
응답
200삭제 성공
파라미터타입필수설명
codestring필수—
messagestring——
dataarray<object>—
권한 정보 배열
└idstring—
대상 ID
└privilegeTypestring—
= Manager | SubManager | Agency
└statusstring—
권한 상태
= Waiting | Processing | Ok
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": [
    {
      "id": "string",
      "privilegeType": "Manager",
      "status": "Waiting"
    }
  ],
  "pagination": {
    "limit": 100,
    "offset": 0,
    "total": 0
  }
}
post/rcsapi/v1/corp/brand/privilege/list

권한 조회

브랜드에 등록된 운영 권한 정보를 조회합니다.

요청 본문
파라미터타입필수설명
clientIdstring필수—
clientSecretstring필수—
brandIdstring필수
브랜드 ID
personIdstring필수
브랜드 관리자 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"
}'
응답
200권한 목록
파라미터타입필수설명
codestring필수—
messagestring——
dataarray<object>—
권한 배열
└idstring—
대상 ID
└privilegeTypestring—
= Manager | SubManager | Agency
└statusstring—
권한 상태
= Waiting | Processing | Ok
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": [
    {
      "id": "string",
      "privilegeType": "Manager",
      "status": "Waiting"
    }
  ],
  "pagination": {
    "limit": 100,
    "offset": 0,
    "total": 0
  }
}

대행사

광고 대행사가 자사 권한으로 호출하는 전용 엔드포인트 (1개) — RCS 포토 발송용 미디어 파일 등록.

post/rcsapi/v1/agency/file

대행사 전용 파일 등록

광고 대행사가 자사 권한으로 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
요청 본문
파라미터타입필수설명
filestring <binary>필수
업로드 파일
fileIdstring(64)필수
파일 ID (64byte)
mimeTypestring필수
Mime type — image/jpeg / image/png / image/gif / image/bmp
= image/jpeg | image/png | image/gif | image/bmp
usageTypestring필수
사용 타입 — 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"
}'
응답
200등록 성공 — `data` 는 [파일 상세 조회 응답](#operation/rapiGetFile) 과 동일
파라미터타입필수설명
codestring필수—
messagestring——
dataobject—
파일 상세
└fileIdstring——
└mimeTypestring——
└usageTypestring—
= chatbot | messagebase | send
└statusstring—
파일 상태
= ready | expired
└expiryDatestring—
유효 기간
paginationobject—
페이지네이션 정보
└limitinteger필수
조회 최대 건수 (기본 100, 최대 1000)
└offsetinteger필수
시작 offset (기본 0)
└totalinteger필수
총 개수
응답 · 200
{
  "code": "string",
  "message": "string",
  "data": {
    "fileId": "string",
    "mimeType": "string",
    "usageType": "chatbot",
    "status": "ready",
    "expiryDate": "string"
  },
  "pagination": {
    "limit": 100,
    "offset": 0,
    "total": 0
  }
}