3.2 컨텐츠(이미지) 관리
베이스 URL
섹션 제목: “베이스 URL”| 구분 | 접속 URL |
|---|---|
| 상용 | https://mnt-api.msghub.uplus.co.kr |
| 검수 | https://mnt-api.msghub-qa.uplus.co.kr |
1. 파일 업로드
섹션 제목: “1. 파일 업로드”메시지 발송에 필요한 이미지나 파일을 등록합니다. 각 채널별 특성에 맞는 파일 형식과 크기를 준수해야 합니다.
📌 주의사항
섹션 제목: “📌 주의사항”- path parameter ch의 rbc의 경우, RBC 메시지베이스 이미지 등록시 사용합니다.
- path parameter ch의 rbc_bia의 경우, RBC 자동응답메시지 이미지 등록시 사용합니다.
- path parameter ch의 rcs의 경우, 템플릿이 아닌 rcs 발송을 위한 이미지 등록시 사용합니다.
- 파일 ID는 고유해야 하며, 이미 등록된 ID는 사용할 수 없습니다.
- 파일 크기는 채널별 제한을 초과할 수 없습니다.
- 파일 형식은 채널별 지원 형식을 준수해야 합니다.
- 등록된 파일은 유효기간이 있으며, 만료 시 재등록이 필요합니다.
- 브랜드톡의 경우 이미지형, 비디오형 썸네일, 커머스형 imgType은 IMAGE 입니다.
1) 요청 (Request)
섹션 제목: “1) 요청 (Request)”URL
섹션 제목: “URL”POST /file/v1/{ch} HTTP/1.1Headers
섹션 제목: “Headers”| Name | Type | 필수 | 설명 |
|---|---|---|---|
| Authorization | String | ● | 사용자 인증 토큰 |
| Content-Type | String | ● | multipart/form-data |
Path Parameters
섹션 제목: “Path Parameters”| Name | Type | 필수 | 설명 |
|---|---|---|---|
| ch | String | ● | 채널(mms/rcs/friendtalk/brandtalk/push/rbc/rbc_bia) |
Request Body
섹션 제목: “Request Body”| Name | Type | 필수 | 설명 |
|---|---|---|---|
| reqFile | Object | ● | 파일 요청 정보 |
| filePart | Array | ● | 파일 목록 |
reqFile 객체
섹션 제목: “reqFile 객체”| Name | Type | 필수 | 설명 |
|---|---|---|---|
| fileId | String | ● | 파일 ID (고유값) |
| imgType | String | ● | 브랜드톡의 경우 필수, 템플릿 유형 (IMAGE, WIDE, WIDE_ITEM_LIST, CAROUSEL_FEED, CAROUSEL_COMMERCE) |
| kkoItemListFirstYn | String | - | 브랜드톡의 경우 필수, 브랜드톡 와이드아이템리스트의 첫번째 이미지 여부 (Y/N) |
| wideYn | String | - | 카카오 와이드 이미지 여부 (Y/N) |
| kkoItemListYn | String | - | 카카오 아이템리스트 여부 (Y/N) |
| kkoCarouselFeedYn | String | - | 카카오 캐러셀 피드 여부 (Y/N) |
| kkoCarouselCommerceYn | String | - | 카카오 캐러셀 커머스 여부 (Y/N) |
| brandId | String | - | RCS 브랜드 ID |
2) 응답 (Response)
섹션 제목: “2) 응답 (Response)”Response Body
섹션 제목: “Response Body”| Name | Type | 설명 |
|---|---|---|
| code | String | 결과 코드 |
| message | String | 결과 메시지 |
| data | Object | 결과 데이터 정보 |
| data.ch | String | 채널 |
| data.imgUrl | String | 이미지 URL (카카오) |
| data.imgUrlLst | Array | 이미지 URL 목록 (카카오) |
| data.fileId | String | 파일 ID |
| data.fileExpDt | String | 파일 만료일시 |
3) 요청 예시 (Sample)
섹션 제목: “3) 요청 예시 (Sample)”Curl
섹션 제목: “Curl”curl -X POST "https://mnt-api.msghub.uplus.co.kr/file/v1/brandtalk" \ -H "accept: */*" \ -H "Content-Type: multipart/form-data" \ -H "Authorization: Bearer {token}" \ -F "reqFile={ "fileId": "my_image_01", "imgType": "WIDE_ITEM_LIST", "kkoItemListFirstYn": "Y", "wideYn": "N", "kkoItemListYn": "N", "kkoCarouselFeedYn": "N", "kkoCarouselCommerceYn": "N" }" -F "filePart=@100.jpg;type=image/jpeg"JSON Response
섹션 제목: “JSON Response”{ "code": "10000", "message": "성공", "data": { "ch": "brandtalk", "imgUrl": "https://mud-kage.kakao.com/dn/b....I/lEC.......Xk/img.jpg", "imgUrlLst": ["https://mud-kage.kakao.com/dn/bt...zI/lE......Xk/img.jpg", ...], "fileId": "my_image_01", "fileExpDt": "2026-07-09T09:48:35" }}2. 컨텐츠 조회
섹션 제목: “2. 컨텐츠 조회”등록된 컨텐츠(파일)를 조회합니다. 파일의 메타데이터와 실제 데이터를 함께 조회할 수 있습니다.
📌 주의사항
섹션 제목: “📌 주의사항”- API 키는 필수 입력 항목입니다.
- 채널과 파일 ID는 필수 입력 항목입니다.
- 파일 데이터는 base64로 인코딩되어 반환됩니다.
- 만료된 파일은 조회할 수 없습니다.
1) 요청 (Request)
섹션 제목: “1) 요청 (Request)”URL
섹션 제목: “URL”GET /contents/v1/{apiKey}/{ch}/{fileId} HTTP/1.1Headers
섹션 제목: “Headers”| Name | Type | 필수 | 설명 |
|---|---|---|---|
| Authorization | String | ● | 사용자 인증 토큰 |
Path Parameters
섹션 제목: “Path Parameters”| Name | Type | 필수 | 설명 |
|---|---|---|---|
| apiKey | String | ● | API 키 |
| ch | String | ● | 채널(mms) |
| fileId | String | ● | 파일 ID |
2) 응답 (Response)
섹션 제목: “2) 응답 (Response)”Response Body
섹션 제목: “Response Body”| Name | Type | 설명 |
|---|---|---|
| code | String | 결과 코드 |
| message | String | 결과 메시지 |
3) 요청 예시 (Sample)
섹션 제목: “3) 요청 예시 (Sample)”Curl
섹션 제목: “Curl”curl -X GET "https://mnt-api.msghub.uplus.co.kr/contents/v1/1/mms/FLE...o4" \ -H "accept: */*" \ -H "Authorization: Bearer {token}"JSON Response
섹션 제목: “JSON Response”성공시 응답
섹션 제목: “성공시 응답”Headers
섹션 제목: “Headers”| 헤더명 | 설명 | 예시 값 |
|---|---|---|
| Content-Type | 파일 유형에 따른 MIME 타입 | image/jpeg |
| Content-Disposition | 파일 처리 관련 정보 | inline; filename=“FL…ERJ.jpg” |
| Content-Length | 파일 크기 (바이트) | 7922 |
Body
섹션 제목: “Body”- 파일의 바이너리 데이터 포함
실패시 응답
섹션 제목: “실패시 응답”{ "code": "29009", "message": "요청한 데이터 없음"}Appendix
섹션 제목: “Appendix”상품별 이미지 첨부 가능 규격
섹션 제목: “상품별 이미지 첨부 가능 규격”MMS
섹션 제목: “MMS”- 지원 형식: JPG, JPEG, GIF(GIF는 첫 프레임만 사용)
- 파일 크기: 최대 300KB
- 사이즈: 최대 1500×1440px
RCS
섹션 제목: “RCS”- RCS 공통
- 지원 형식: JPG, JPEG, PNG, BMP, GIF
- 파일 크기: 최대 1MB
- 이미지형(세로형)
- 사이즈: 568x336px (권장)
- 이미지형(이미지 강조)
- 사이즈: 900x900px 또는 900x1200px (필수)
- 썸네일형
- 이미지 사이즈: 900x560px (필수)
- 썸네일 이미지 사이즈: 300x300px (필수)
- SNS형
- 사이즈: 900x900px (필수)
- SNS형(중간버튼)
- 사이즈: 900x560px (필수)
- 슬라이드형(Small)
- 사이즈: 360x336px (권장) / 360x1620px (최대)
- 슬라이드형(Medium)
- 사이즈: 696x504px (권장) / 696x1620px (최대)
카카오 브랜드톡
섹션 제목: “카카오 브랜드톡”- 브랜드톡 공통
- 지원 형식: JPG, JPEG, PNG
- 파일 크기: 최대 5MB
- 가로 500px 이상
- 이미지형, 커머스형, 캐러셀 피드형, 프리미엄 동영상 썸네일 이미지
- 가로:세로 비율이 2:1 이상 3:4 이하 , 권장 사이즈 800400, 800600
- 와이드형
- 가로:세로 비율이 2:1 이상 1:1 이하, 권장 800*600
- 와이드 리스트형 첫번째 이미지
- 가로:세로 비율이 2:1
- 와이드 리스트형 2~4번째 이미지
- 가로:세로 비율 1:1
- 캐러셀 커머스형
- 전체 이미지 비율이 동일해야 한다.
- 가로:세로 비율 2:1 이상 3:4 이하, 권장 사이즈 800400, 800600
- 지원 형식: JPG, PNG
- 파일 크기: 최대 1MB