#Shukei(集計)

Google Calendar から「タグ」を収集して、活動時間を集計します。

[SHUKEI] というタグをつけたカレンダーの予定
SHUKEIタグを含む予定

##How to Join

https://app.shukei.uni.ba からサインアップすると集計が始まります。

##Data Usage

集計された活動時間は Web API 経由でアクセスできます。
以下の 3 種の視点をクエリパラメータとして指定してください。

これらの組み合わせに対応する「ユーザ x 期間」「タグ x 期間」のテーブル構造のデータを返します。
テーブルのセルには活動時間の集計値が入ります。

### 例 1:foo と bar の、今年の活動 サンプルリクエスト

GET /api/calendar-events/rollups/userを使います。

users
foo@example.com, bar@example.com
since
2025-01-01
until
2026-01-01
interval
month

foo と bar の活動時間が月別に集計されました。

ユーザ x 期間(月)の表
2025-01-01 2025-02-01 2025-03-01 ... 2025-12-01
foo@example.com 2000 1800 2200 ... 2100
bar@example.com 1500 1600 1700 ... 1800

### 例 2:foo と bar の、SHUKEI に対する今週の活動 サンプルリクエスト

同様に GET /api/calendar-events/rollups/userを使います。

users
foo@example.com, bar@example.com
filterTags
SHUKEI
since
2025-09-01
until
2025-09-08
interval
day

foo と bar の活動時間が日別に集計されました。

ユーザ x 期間(日)の表
2025-09-01 2025-09-02 2025-09-03 ... 2025-09-07
foo@example.com 100 150 200 ... 120
bar@example.com 80 90 110 ... 130

### 例 3:活動 SHUKEI と活動 UNIBA の、今年の活動 サンプルリクエスト

GET /api/calendar-events/rollups/tagを使います。

tags
SHUKEI, UNIBA
since
2025-01-01
until
2026-01-01
interval
month

SHUKEI と UNIBA の活動時間が月別に集計されました。

タグ x 期間(月)の表
2025-01-01 2025-02-01 2025-03-01 ... 2025-12-01
SHUKEI 1200 1300 1400 ... 1500
UNIBA 2300 2100 2500 ... 2400

### 例 4:活動 SHUKEI と活動 UNIBA の、foo と bar による今週の活動 サンプルリクエスト

同様に GET /api/calendar-events/rollups/tagを使います。

tags
SHUKEI, UNIBA
filterUsers
foo@example.com, bar@example.com
since
2025-09-01
until
2025-09-08
interval
day

SHUKEI と UNIBA の活動時間が日別に集計されました。

タグ x 期間(日)の表
2025-09-01 2025-09-02 2025-09-03 ... 2025-09-07
SHUKEI 180 240 310 ... 250
UNIBA 150 160 140 ... 170

### 🔒 予定一覧の取得

集計値ではなく、予定情報そのものの一覧を返す API もありますが、こちらは認証が必要です。

## FAQ

認証なしでアクセスできる API は危なくないの?
活動時間の集計テーブルを返す API のパラメータは、取得したいユーザやタグを直接指定する必要があり、それに関連するデータのみが集計されます。また、登録されているタグ一覧やユーザ一覧を取得する方法はありません。つまり「自分がそもそも把握していないユーザのメールアドレスやタグが見えてしまう」ことはありません。仮に総当たり攻撃等でメールアドレスやタグを特定したとしても、集計値以外の情報は得られません。
どんな予定がデータベースに保存されるの?
ブラケット[ ]で囲まれたタグをタイトルに含む(終日でない)予定のみが保存されます。