sayren Docs
Analytics

유입별 방문 분석

유입 채널·소스·캠페인·기기별 세션과 구매를 돌려준다. 세션의 유입은 그 세션 첫 페이지뷰의 utm·리퍼러다. 스코프 `analytics:r`. - 날짜는 Asia/Seoul 기준이며 `from`·`to` 모두 포함한다. 최대 92일. - 스토어프런트가 `@sayren/storefront-sdk`로 수집한 이벤트를 주기적으로 집계한 값이다. 오늘 값은 `lastComputedAt` 시점까지 반영된다. - 봇·자동화 브라우저의 세션은 빠진다. 테스트 결제(샌드박스 결제)로 만든 구매는 기본 제외이고 `includeTest=true`면 포함한다.

GET
/v1/analytics/sources

유입 채널·소스·캠페인·기기별 세션과 구매를 돌려준다. 세션의 유입은 그 세션 첫 페이지뷰의 utm·리퍼러다. 스코프 analytics:r.

  • 날짜는 Asia/Seoul 기준이며 from·to 모두 포함한다. 최대 92일.
  • 스토어프런트가 @sayren/storefront-sdk로 수집한 이벤트를 주기적으로 집계한 값이다. 오늘 값은 lastComputedAt 시점까지 반영된다.
  • 봇·자동화 브라우저의 세션은 빠진다. 테스트 결제(샌드박스 결제)로 만든 구매는 기본 제외이고 includeTest=true면 포함한다.
AuthorizationBearer <token>

userToken(계정 스코프) 또는 storeToken(스토어 스코프)

In: header

Query Parameters

from*string

시작일 (YYYY-MM-DD, Asia/Seoul 기준, 포함)

Match^\d{4}-\d{2}-\d{2}$
to*string

종료일 (YYYY-MM-DD, 포함). from부터 최대 92일

Match^\d{4}-\d{2}-\d{2}$
includeTest?string

테스트 결제(샌드박스 결제)로 만든 구매 포함 여부. 기본 false

Value in

  • "true"
  • "false"
groupBy?string

행 집계 기준. 기본 CHANNEL

Value in

  • "CHANNEL"
  • "SOURCE"
  • "CAMPAIGN"
  • "DEVICE"

Response Body

application/json

curl -X GET "https://example.com/v1/analytics/sources?from=string&to=string"
{  "meta": {    "status": 0,    "code": "OK",    "message": "string",    "isSuccess": true  },  "data": {    "from": "string",    "to": "string",    "timezone": "Asia/Seoul",    "currency": "KRW",    "includeTest": true,    "lastComputedAt": "string",    "groupBy": "CHANNEL",    "rows": [      {        "channel": "DIRECT",        "source": "string",        "medium": "string",        "campaign": "string",        "device": "desktop",        "sessions": -9007199254740991,        "visitors": -9007199254740991,        "engagedSessions": -9007199254740991,        "purchaseSessions": -9007199254740991,        "purchases": -9007199254740991,        "revenue": -9007199254740991,        "conversionRate": 0      }    ]  },  "error": null}

상품별 방문 분석 GET

상품별 목록 노출·상세 조회·장바구니 담기·구매를 돌려준다. 스코프 `analytics:r`. - 날짜는 Asia/Seoul 기준이며 `from`·`to` 모두 포함한다. 최대 92일. - 스토어프런트가 `@sayren/storefront-sdk`로 수집한 이벤트를 주기적으로 집계한 값이다. 오늘 값은 `lastComputedAt` 시점까지 반영된다. - 봇·자동화 브라우저의 세션은 빠진다. 테스트 결제(샌드박스 결제)로 만든 구매는 기본 제외이고 `includeTest=true`면 포함한다. - 구매 금액은 주문 상품 금액 합계다. 상품명은 현재 이름이고 삭제된 상품은 null이다.

API 로그 목록 GET

이 스토어로 들어온 관리 API 요청 기록을 최신순으로 반환한다. 커서 페이지네이션이며, 다음 페이지는 응답의 `nextCursor`를 `cursor`로 넘겨 조회한다. `status=error`는 4xx·5xx 전체, `q`는 경로(쿼리 포함, 마스킹 후 값) 부분 일치(대소문자 무시), `from`은 포함·`to`는 미포함이다. 필터를 바꾸면 커서를 버리고 처음부터 조회한다. 기록 대상은 이 스토어로 인증된 관리 API(`/v1/**`) 요청이다. OAuth 프로토콜 표면(`/v1/oauth2/*`, `/.well-known/*`)과 API 로그 조회 자체(`/v1/api-logs`)는 기록하지 않는다. 인증 단계에서 거부된 요청(토큰이 없거나 유효하지 않은 401, 토큰 스코프 부족 403)은 스토어를 확정하기 전이라 기록되지 않는다. Authorization·쿠키 헤더와 요청 본문은 저장하지 않고, 민감한 쿼리 값(token·secret·code·password·email·phone·이름·검색어 등)은 `***`로 가린다. 기록은 응답 후 비동기로 쌓여 수 초 늦게 보일 수 있다. 보관 기간은 7일이며 조회도 최근 7일로 한정된다. OWNER/ADMIN이 콘솔에서 로그인한 토큰으로만 조회할 수 있다.