--- title: "메시지 발송 목록 조회" slug: "sens-brandmessage-list" updated: 2026-07-23T09:04:26Z published: 2026-07-23T09:04:26Z canonical: "api.ncloud-docs.com/sens-brandmessage-list" --- > ## Documentation Index > Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # 메시지 발송 목록 조회 Classic/VPC 환경에서 이용 가능합니다. 브랜드 메시지의 메시지에 대한 발송 요청 목록을 조회합니다. 최근 30일 이내의 요청 목록을 조회할 수 있습니다. ## 요청 요청 형식을 설명합니다. 요청 형식은 다음과 같습니다. | 메서드 | URI | | --- | --- | | GET | /brandmessage/v2/services/{serviceId}/messages | ### 요청 헤더 Simple & Easy Notification Service API에서 공통으로 사용하는 헤더에 대한 정보는 [Simple & Easy Notification Service 요청 헤더](/docs/sens-overview#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94)를 참조해 주십시오. ### 요청 경로 파라미터 요청 경로 파라미터에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `serviceId` | String | Required | Biz Message 서비스 아이디 - [프로젝트 목록 조회](/docs/sens-project-list) 참조 | ### 요청 쿼리 파라미터 요청 쿼리 파라미터에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `requestId` | String | Conditional | 요청 아이디 - 메시지 발송 시 응답받은 요청 아이디 입력 - `requestId`, `requestStartTime`+`requestEndTime`, `completeStartTime`+`completeEndTime` 중 하나는 필수 입력 - `requestStartTime`+`requestEndTime`과 `completeStartTime`+`completeEndTime`는 동시 사용 불가 | | `requestStartTime` | String | Conditional | 발송 요청 기준 조회 시작 일시 - YYYY-MM-DD HH:mm:ss 형식(URL 인코딩 필요) - `requestId`, `requestStartTime`+`requestEndTime`, `completeStartTime`+`completeEndTime` 중 하나는 필수 입력 - `requestStartTime`+`requestEndTime`과 `completeStartTime`+`completeEndTime`는 동시 사용 불가 | | `requestEndTime` | String | Conditional | 발송 요청 기준 조회 종료 일시 - YYYY-MM-DD HH:mm:ss 형식(URL 인코딩 필요) - `requestStartTime`과의 기간이 31일 이내여야 함 | | `completeStartTime` | String | Conditional | 발송 완료 기준 조회 시작 일시 - YYYY-MM-DD HH:mm:ss 형식(URL 인코딩 필요) - `requestId`, `requestStartTime`+`requestEndTime`, `completeStartTime`+`completeEndTime` 중 하나는 필수 입력 - `requestStartTime`+`requestEndTime`과 `completeStartTime`+`completeEndTime`는 동시 사용 불가 | | `completeEndTime` | String | Conditional | 발송 완료 기준 조회 종료 일시 - YYYY-MM-DD HH:mm:ss 형식(URL 인코딩 필요) - `completeStartTime`과의 기간이 24시간 이내여야 함 | | `plusFriendId` | String | Conditional | 채널 아이디 - 네이버 클라우드 플랫폼 콘솔의 **Simple & Easy Notification Service** > **Biz MessageBrand** > **KakaoTalk Channel**에서 확인 - `requestId` 미입력 시 필수 입력 | | `messageId` | String | Optional | 메시지 아이디 | | `requestStatusName` | String | Optional | 요청 상태 - `success` \| `fail` - `success`: 성공 - `fail`: 실패 | | `messageStatusName` | String | Optional | 수신 상태 - `success` \| `processing` \| `fail` - `success`: 성공 - `processing`: 처리중 - `fail`: 실패 | | `templateCode` | String | Optional | 템플릿 코드 - 네이버 클라우드 플랫폼 콘솔의 **Simple & Easy Notification Service** > **Biz MessageBrand** > **Message Template**에서 확인 | | `to` | String | Optional | 수신 번호 - 숫자만 입력 가능 | | `nextToken` | String | Optional | 페이지 위치 토큰 - 다음 목록 조회 시 사용하며, 이전 호출에서 응답받은 토큰값 입력 | | `pageSize` | Integer | Optional | 페이지당 항목 수 - 1~100 (기본값: 20) - `requestId` 입력 시 기본으로 100 적용 | ### 요청 예시 요청 예시는 다음과 같습니다. ``` curl --location --request GET 'https://sens.apigw.ntruss.com/brandmessage/v2/services/ncp:kkobizmsg:kr:27*********6:sens/messages?requestStartTime=2025-11-25T09%3A10%3A00&requestEndTime=2025-11-25T23%3A30%3A00&pageSize=3' \ --header 'x-ncp-apigw-timestamp: {Timestamp}' \ --header 'x-ncp-iam-access-key: {Access Key}' \ --header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' ``` ## 응답 응답 형식을 설명합니다. ### 응답 바디 응답 바디에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `statusCode` | String | - | 상태 코드 - HTTP 상태 코드 규칙을 따름 - `202`: 성공 - 그 외: 실패 | | `statusName` | String | - | 상태 - `success` \| `processing` \| `reserved` \| `fail` - `success`: 성공 - `processing`: 처리중 - `reserved`: 예약 - `fail`: 실패 | | `messages` | Array | - | 메시지 발송 요청 목록: [messages](/docs/sens-brandmessage-list#messages) | | `pageSize` | Integer | - | 페이지당 항목 수 | | `pageIndex` | Integer | - | 페이지 인덱스 | | `nextToken` | String | - | 페이지 위치 토큰 - 다음 페이지가 없을 경우, 표시되지 않음 | | `itemCount` | Integer | - | 응답 결과 수 | | `hasMore` | Boolean | - | 다음 페이지 존재 여부 - `true`: 존재 - `false`: 존재 안 함 | #### `messages` `messages`에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `requestTime` | String | - | 요청 일시 - YYYY-MM-DDTHH:mm:ss.sss 형식 | | `requestId` | String | - | 요청 아이디 | | `messageId` | String | - | 메시지 아이디 | | `countryCode` | String | - | 국가 코드 | | `to` | String | - | 수신 번호 | | `content` | String | - | 메시지 내용 | | `plusFriendId` | String | - | 채널 아이디 | | `messageType` | String | - | 메시지 타입 - `TEXT` \| `IMAGE` \| `WIDE_IMAGE` \| `WIDE_ITEM_LIST` \| `COMMERCE` \| `CAROUSEL_COMMERCE` \| `CAROUSEL_FEED` \| `PREMIUM_VIDEO` - `TEXT`: 텍스트 - `IMAGE`: 이미지형 - `WIDE_IMAGE`: 와이드 이미지형 - `WIDE_ITEM_LIST`: 와이드 리스트형 - `COMMERCE`: 커머스형 - `CAROUSEL_COMMERCE`: 캐러셀 커머스형 - `CAROUSEL_FEED`: 캐러셀 피드형 - `PREMIUM_VIDEO`: 프리미엄 동영상형 | | `isAdult` | Boolean | - | 대상 연령 - `true` \| `false` (기본값) - `true`: 성인용 - `false`: 전체 연령용 | | `targeting` | String | - | 타겟팅 코드 - `M` \| `N` \| `I` (기본값) - `M`: 고객사의 광고성 정보 수신동의 유저(카카오톡 수신 동의) - `N`: 고객사의 광고성 정보 수신동의 유저(카카오톡 수신 동의) 중 해당 채널 친구 제외 - `I`: 광고성 정보 수신동의 유저(카카오톡 수신 동의)이면서 해당 채널 친구 - `F`: 채널 친구가 아닌 대상 제외(지원 예정) | | `completeTime` | String | - | 완료 일시 - YYYY-MM-DDTHH:mm:ss 형식 | | `requestStatusCode` | String | - | 요청 상태 코드 - `A000`: 성공 - 그 외: 실패 | | `requestStatusName` | String | - | 요청 상태 - `success` \| `fail` - `success`: 성공 - `fail`: 실패 | | `requestStatusDesc` | String | - | 요청 상태 설명 | | `messageStatusCode` | String | - | [수신 상태 코드](/docs/sens-brandmessage-get#%EC%88%98%EC%8B%A0%EA%B2%B0%EA%B3%BC%EC%BD%94%EB%93%9C) - `0000`: 성공 - 그 외: 실패 | | `messageStatusName` | String | - | 수신 상태 - `success` \| `processing` \| `fail` - `success`: 성공 - `processing`: 처리중. `messageStatusCode`와 `messageStatusDesc`가 표시되지 않음 - `fail`: 실패 | | `messageStatusDesc` | String | - | 수신 상태 설명 | | `useSmsFailover` | Boolean | - | SMS 대체 발송 사용 여부 - `true` \| `false` - `true`: 사용 - `false`: 사용 안 함 | | `failover` | Object | - | SMS 대체 발송 정보 - 대체 발송이 실행된 경우, 표시 | | `failover.smsServiceId` | String | - | 대체 발송에 사용된 SMS 서비스 아이디 | | `failover.requestId` | String | - | 대체 발송 요청 아이디 | | `failover.messageId` | String | - | 대체 발송 메시지 아이디 | | `failover.requestStatusCode` | String | - | [SMS 대체 발송 요청 상태 코드](/docs/sens-brandmessage-get#SMS%EB%8C%80%EC%B2%B4%EB%B0%9C%EC%86%A1%EC%9A%94%EC%B2%AD%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C) 참 | | `failover.requestStatusName` | String | - | 대체 발송 요청 상태 - `success` \| `fail` - `success`: 성공 - `fail`: 실패 | | `failover.requestStatusDesc` | String | - | 대체 발송 요청 상태 설명 | | `failover.messageStatus` | String | - | 대체 발송 메시지 상태 - `READY` \| `PROCESSING` \| `COMPLETED` - `READY`: 대기중 - `PROCESSING`: 처리중 - `COMPLETED`: 완료 | | `failover.messageStatusCode` | String | - | 대체 발송 메시지 수신 상태 코드 - [SMS 수신 결과 코드](/docs/sens-sms-get#%EC%88%98%EC%8B%A0%EA%B2%B0%EA%B3%BC%EC%BD%94%EB%93%9C) 참조 | | `failover.messageStatusName` | String | - | 대체 발송 메시지 수신 상태 | | `failover.messageStatusDesc` | String | - | 대체 발송 메시지 수신 상태 설명 | ### 응답 상태 코드 Simple & Easy Notification Service API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 [Simple & Easy Notification Service 응답 상태 코드](/docs/sens-overview#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C)를 참조해 주십시오. ### 응답 예시 응답 예시는 다음과 같습니다. ``` { "statusCode": "202", "statusName": "success", "messages": [ { "requestTime": "2025-11-28T11:21:06.317", "requestId": "RBBA-*************-****-********-QlvjXtBr", "messageId": "bc87c708-****-****-****-57b56c506309", "countryCode": "82", "to": "010********", "plusFriendId": "@******", "messageType": "TEXT", "targeting": "I", "isAdult": false, "completeTime": "2025-11-28T11:21:06", "requestStatusCode": "A000", "requestStatusName": "success", "requestStatusDesc": "성공", "messageStatusCode": "0000", "messageStatusName": "success", "messageStatusDesc": "정상 발송", "useSmsFailover": false }, { "requestTime": "2025-11-28T10:46:55.663", "requestId": "RBBA-*************-****-********-kgepsygn", "messageId": "3d68485a-****-****-****-730c20492b51", "countryCode": "82", "to": "010********", "plusFriendId": "@******", "messageType": "TEXT", "targeting": "I", "isAdult": false, "completeTime": "2025-11-28T10:46:56", "requestStatusCode": "A000", "requestStatusName": "success", "requestStatusDesc": "성공", "messageStatusCode": "0000", "messageStatusName": "success", "messageStatusDesc": "정상 발송", "useSmsFailover": true, "failover": { "smsServiceId": "ncp:sms:kr:27*********6:sens", "requestId": "RSLA-*************-****-********-ZzdhBYsk", "messageId": "6cc7eab4-****-****-****-c523f8a0e8ce", "requestStatusCode": "0", "requestStatusName": "success", "requestStatusDesc": "성공", "messageStatus": "COMPLETED", "messageStatusCode": "0", "messageStatusName": "success", "messageStatusDesc": "성공" } } ], "pageSize": 2, "pageIndex": 0, "nextToken": "**********V0ZXJIYXNoIjoiNTBkOTg5NTdkYmM2MjIwZWJjMzAyMzNiNmQwZWRlN**********jZGJlMmI5MTcyOTQ3ZDNiZjU0YzRjNjU3NiIsInRva2VuSGFzaCI6ImVmM2NlNGUyMjc1MTE1ZDNiMDZiNjhmNzJiOWM0MDcxOTQ1MjA2MGRiN2M4MmRiYTQ1MGMxNzIwOTBiNmMy**********NoZWRFcG9jaE1pbGxpcyI6MTc2NDI5NjU4MDIwMywicmVxdWVzdFRpbWVFcG9jaE1pbGxpcyI6MTc2NDI5NDQxNTY2MywiY29tcGxldGVUaW1lRXBvY2hNaWxsaXMiOm51bGwsIm1lc3NhZ2VJZCI6IjNkNjg0ODVhLWU3NmQtNGE3Ny05Y2Q0LTczMGMyMD**********", "itemCount": 2, "hasMore": true } ```