隱私權政策

一、我們是誰

ArtSafari(artsafari.io)是一個展覽資訊彙整服務,由個人開發者營運,聯絡信箱 my@esast.com。本政策說明我們會收集什麼資料、如何使用,以及你擁有的權利。

二、我們收集的資料

2.1 你主動提供的資料

  • Google 帳號基本資料:你用 Google 登入時,我們會收到電子郵件地址、姓名與頭像 URL。
  • 收藏:你標記為「收藏」的展覽清單。
  • 提醒設定:你為展覽設定的「結束前 N 天提醒」。

2.2 自動產生的資料

  • 伺服器 log(IP、User-Agent、時間戳)僅用於除錯與阻擋濫用,保留時間以 Cloudflare 預設為準。
  • 我們不使用 Google Analytics 或任何第三方追蹤。

三、Google Calendar 權限說明

當你第一次設定展覽提醒時,我們會請求你授權下列 Google OAuth scope:

https://www.googleapis.com/auth/calendar.app.created

這個權限只允許我們存取「由 ArtSafari 透過 Google Calendar API 建立的日曆」裡的事件。具體來說:

  • ✅ 我們會在你的 Google 帳號建立一個名為「ArtSafari 提醒」的子日曆
  • ✅ 我們會在這個子日曆建立、更新、刪除展覽提醒事件
  • ❌ 我們無法讀取你的主要日曆、工作日曆、家庭共用日曆或任何其他日曆
  • ❌ 我們無法看到你原本的任何事件內容

你可以隨時到 Google Calendar 左側邊欄直接隱藏或刪除「ArtSafari 提醒」子日曆,也可以在 Google 帳戶權限管理 撤銷 ArtSafari 的授權。

四、我們如何儲存資料

  • 展覽資料、使用者資料、收藏、提醒設定儲存於 Cloudflare D1 (SQLite),位於亞太區機房。
  • Google OAuth 的 refresh token 以加密形式儲存於 D1,僅用於呼叫你已授權的 Calendar API。
  • 使用者 session 儲存於 Cloudflare KV,預設 7 天過期。
  • 展覽圖片儲存於 Cloudflare R2。

五、資料共享

我們不會把你的個人資料販售或提供給第三方廣告商。唯一的資料接收方是:

  • Google(我們呼叫 Calendar API 時代表你建立事件)
  • Cloudflare(作為我們的基礎建設提供者)

六、你的權利

  • 撤銷 Calendar 授權:到 Google 帳戶權限管理移除 ArtSafari。之後我們便無法再存取你的日曆。
  • 刪除收藏或提醒:在網站上直接操作即可,立即生效。
  • 刪除帳號與所有資料:請來信 my@esast.com,我們會在 7 個工作天內刪除你的 users row、所有收藏、提醒與相關的 Google Calendar 事件。

七、Cookies

我們僅使用一個必要的 HttpOnly session cookie(__session)維持登入狀態,不使用任何追蹤或廣告 cookie。

八、政策變更

本政策若有重大變更會在本頁公告,並視情況透過站內通知告知。

九、聯絡方式

如有任何隱私權相關疑問,請來信 my@esast.com