일자별 집계 원장에서 읽기 때문에 발송량이 많아도 응답이 빨라요. 대시보드나 월간 리포트를 만들 때 써요.
요청 파라미터
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
s_at |
String | 선택 | 조회 시작 시각 (ISO8601) |
e_at |
String | 선택 | 조회 종료 시각 (ISO8601) |
기간 규칙은 발송내역 목록과 같아요. 기본 30일, 최대 92일이에요. 응답 period 의 시각 형식은 응답의 시각 형식을 봐요.
코드 예제
curl -X GET "https://message.bootapi.com/alimtalk/messages/stats?s_at=2026-08-01T00:00:00%2B09:00" \
-H "Authorization: Basic {base64(client_key:secret_key)}"bashrequire 'bootpay'
commerce = BootpayStore::RestClient.new(client_key: 'your-commerce-client-key', secret_key: 'your-commerce-secret-key')
response = commerce.alimtalk_message_stats(s_at: '2026-08-01T00:00:00+09:00')
puts response.data[:totals]ruby응답
{
"period": {
"from": "2026-08-01T00:00:00+09:00",
"to": "2026-08-27T10:00:00+09:00"
},
"totals": {
"sent": 1240,
"success": 1198,
"failed": 30,
"opted_out_hit": 8,
"rejected": 4,
"canceled": 2,
"success_rate": 0.9756
},
"daily": [
{ "date": "20260801", "sent": 40, "success": 39, "failed": 1, "opted_out_hit": 0, "rejected": 0, "canceled": 0 }
],
"billing": {
"billable_count": 1198,
"unit_price": 8.5,
"unit_price_source": "cache",
"amount": 10183.0
}
}jsontotals
| 필드 | 설명 |
|---|---|
| sent | 접수된 전체 건수 |
| success | 전달 성공 |
| failed | 전달 실패 |
| opted_out_hit | 발송 제외 목록에 걸려 걸러진 건수 |
| rejected | 벌크 발송에서 변수 누락·규격 위반으로 건별 거부된 건수. 벌크의 번호 오류와 단건 발송의 거부는 세지 않아서 벌크 응답의 rejected 합과 다를 수 있어요 |
| canceled | 예약 취소된 건수 |
| success_rate | success ÷ (success + failed). 확정된 건이 없으면 null |
성공률의 분모는 결과가 확정된 건이에요. 아직 전송 중인 건까지 넣으면 실시간 조회에서 성공률이 실제보다 낮게 보이기 때문이에요.
daily
날짜별 같은 지표예요. date 는 YYYYMMDD 형식이고, 발송이 없는 날도 0 으로 채워 돌려줘요. 추이 차트를 그릴 때 x축이 건너뛰지 않아요.
날짜는 그 사건이 일어난 날(Asia/Seoul) 기준이에요. sent 는 접수일, success·failed 는 결과가 확정된 날, canceled 는 취소한 날에 쌓여요. 그래서 같은 기간이라도 접수 시각으로 거르는 발송내역 목록과 건수가 다를 수 있어요.
billing
| 필드 | 설명 |
|---|---|
| billable_count | 알림톡으로 과금되는 건수 |
| unit_price | 알림톡 단가 |
| unit_price_source | cache(확정 요율) 또는 default(잠정 단가) |
| amount | billable_count × unit_price |
확정 청구액이 아니에요
unit_price_source 가 default 면 요율표에 등록된 값이 아니라 잠정 단가로 계산한 값이에요. 이 경우 amount 는 참고용으로만 봐요.
