Session API

Session API를 사용하는 방법입니다.

시작하기 전에

WalkInsights의 Session API를 이용하는 방법은 보통 다음과 같은 API을 이용하게 됩니다.

https://api.walkinsights.com/api/v1/shops/{shop_id}/wifi_sessions

위 API를 사용하여 WalkInsights에서 제공하는 모든 API를 이용할 수 있습니다.
(관련문서는 본 문서 최하단에서 링크를 제공하고 있습니다.)

만약 Session API만 사용한다면 이 문서에서 제안하는 방법을 사용하시기를 추천드립니다.

❗️

이 문서에서 설명하는 방법에 대해서

이 문서에서 제공하는 방법은 Session API에만 이용할 수 있으며,
WalkInsights에서 제공하는 모든 REST API를 이용할 수는 없습니다.

Session API를 이용할 수 있는 또 다른 방법

에서 언급한 WalkInsights Session API를 사용하는 방법은 다음과 같습니다.

[headers]
X-User-Email : YOUR_EMAIL
X-User-Token : YOUR_AUTHENTICATION_TOKEN

[URL]
GET https://dropwizard.walkinsights.com/api/v1/shops/{shop_id}/wifi_sessions?parameters

[Parameters]
since
limit

Parameter에 대한 설명은 아래 표와 같습니다.

ParameterTypeRequireDefault ValueExample
sinceStringNosince=7feb6e7a8886cb4d:in
limitStringNo20(max: 200)limit=20

위와 같이 요청을 보내면 아래와 같이 응답이 오게 됩니다.

{
  since: "7feb6e7a8886cb4d:in",
  sessions: [
    {
      row_key: "1:7feb0c09745c236b:in",
      wifi_id: "b83b0d11462a6fe84057f4c1a26225ce",
      dwell_time: 5,
      area: "out",
      ts: 1435897485000,
      local: true,
      revisit_count: null,
      revisit_period: null,
      deny: null
    },
    {
      row_key: "1:7feb0c09745c236b:in",
      wifi_id: "d53a92482b683ed83de306653854d978",
      dwell_time: 5,
      area: "in",
      ts: 1433318231031,
      local: false,
      revisit_count: 1,
      revisit_period: 15,
      deny: true
    },
    ...
  ]
}

응답을 통해서 받게 되는 JSON의 형태는 위와 같으며,
각 값에 대한 설명은 다음과 같습니다.

NameTypeDescription
sinceStringOffset
sessionsArraySession의 집합
row_keyStringSession의 unique key
wifi_idStringSession의 WIFI ID
dwell_timeIntegerSession에 머문 시간
areaString세션의 영역 이름
tsIntegerUNIX Epoch TimeStamp
localBooleanSession의 로컬라이즈가 되었는 지
revisit_countIntegerSession의 재방문 횟수
revisit_periodDoubleSession의 재방문 기간
denyBooleanSession이 deny가 되었는 지
🚧

REST API 인증에 대해서

이 문서에서는 인증에 대해서 설명하지는 않습니다.
인증에 대한 문서가 필요하시면 본 문서 최하단에 있는 API 인증 문서의 링크를 참고하시기 바랍니다.

since의 활용법

Session API에서 offset인 since를 활용하는 방법에 대해서 알아봅니다.

응답을 통해서 받게 되는 JSON 데이터 중에서 since를 활용합니다.

since는 커서와 같이 활용하는 값이며,

sessionssince 이후에 생성된 session들을 검색합니다.

sessions는 최신순으로 정렬되어 있기 때문에

가장 첫번째 object는 최신의 session 데이터이고

마지막에 있는 object는 sessions 중에 가장 오래된 session 데이터입니다.

since를 활용하여 Session API를 이용하는 방법은 다음과 같습니다.

  json = Json.parse(response.body)

  since = json.get("since")

이렇게 만들어진 since를 Session API를 요청할 때 parameter로 넣으면 됩니다.

https://dropwizard.walkinsights.com/api/v1/shops/{shop_id}/wifi_sessions?since=since