Language / 言語: English · 日本語 (Español / 简体中文: coming soon — the English version applies in the meantime.)
Last updated: 2026-10-27
This Privacy Policy explains how Teciora ("we", "us") handles your information when you use the Mood-Ring Weather mobile application (the "App"). Our design principle is simple: the App should know as little about you as possible while still working well.
| Category | What | Where it goes / is kept | Why |
|---|---|---|---|
| Location for weather | The approximate latitude/longitude of your device when the App fetches weather. The App requests approximate location only (Android: approximate location permission; iOS: approximate location by default) | Rounded to 2 decimal places (about 1 km) and sent directly from your device to Open-Meteo. Not sent to our servers by this route. Not kept as a history | To fetch weather and air-quality data for where you are and to compute your comfort score (MRI) |
| Place name for your location | The coordinates above | Handled by your phone's built-in geocoding service (Apple on iOS, Google on Android) under Apple's or Google's own privacy terms. We do not receive the result | To show the name of your area on screen |
| Approximate location for emergency alerts | One position rounded to 1 decimal place (about 10 km). Not stored while the App is showing its default location because yours is unavailable | Our server database (Google Firebase Firestore), linked to your anonymous ID, overwritten when it changes. Our notification server (Cloudflare Workers) uses it to request the forecast for that area from Open-Meteo | To decide and deliver emergency safety alerts (heat, strong wind, heavy snow) for your area |
| Place search text | The text you type when searching for a place (and spelling variants the App derives from it to find a match), and the App's language | Sent directly from your device to Open-Meteo's place-search (geocoding) service while you type. We do not receive or store it, and the App does not keep a search history | To show matching places so you can choose one |
| Saved places (Plus) | The names and coordinates of places you save | On your device only. Their coordinates (rounded to about 1 km) are sent to Open-Meteo to fetch their weather, as above | To show the weather of the places you saved |
| Anonymous user ID | A random identifier created by Firebase Anonymous Authentication | Our server database (Firebase) and RevenueCat | To keep your notification and subscription records without knowing who you are |
| Push notification token, platform and language | The device token issued for push notifications (Firebase Cloud Messaging; on iOS it is linked to Apple's APNs token), whether your device is iOS or Android, and the App's language | Our server database, linked to your anonymous ID | Solely to deliver notifications, in your language. Never used to identify or profile you. |
| Alert delivery records | Which type and level of emergency alert we sent you, the day the alert was for, and when it was sent. No location is included | Our notification server's temporary store (Cloudflare), linked to your anonymous ID. Deleted automatically after at most 18 hours (6 hours for heat alerts) | To avoid sending you the same alert again and again |
| App settings | Units, theme, language, notification preferences, onboarding flags | On your device only | To remember your choices |
| Personal calibration & comfort data | Your feedback taps, sensitivity weights (heat/cold/humidity/pressure), estimated personal optimal MRI, comfort records | On your device only. Never sent to our servers | To personalize the MRI score to you |
| Purchase information (Plus) | Subscription status and purchase receipts, processed by Apple/Google and our subscription processor RevenueCat. When the App starts, it shares your anonymous ID with RevenueCat so that your subscription can be checked and restored, even if you have never purchased | RevenueCat; and our server database, which keeps your entitlement status (plan, product, expiry, renewal status, store) and a log of subscription events (event type, product, plan, time), linked to your anonymous ID | To activate and restore your subscription, and for accounting and billing enquiries. Payment card details are handled by Apple/Google only; we never receive them |
| Technical information from the Firebase libraries | The Google Firebase libraries we use (authentication, database, messaging) send technical information they need to work (such as library version, device model, OS version and app version) and limited diagnostic information about their own operation | Google. Not linked to your identity | For those services to work and be maintained. We do not use it for analytics or advertising |
We use only the services needed to run the App, and only for the minimum described above:
| Service | Role | Data involved |
|---|---|---|
| Cloudflare (Workers) | Our notification server: checks the forecast for subscribed areas, sends emergency alerts, receives subscription updates from RevenueCat | Rounded (about 10 km) coordinates, push token, platform, language, anonymous ID, alert delivery records (deleted within 18 hours) |
| Google Firebase (Anonymous Auth, Firestore, Cloud Messaging) | Anonymous accounts, our server database, push delivery | Anonymous ID, rounded (about 10 km) coordinates, push token, platform, language, subscription entitlement and event log, technical information from the Firebase libraries |
| Apple (APNs) | Push delivery on iOS | Push token, notification content |
| Open-Meteo | Weather, air-quality and place-search data, requested directly by your device (and by our notification server for alert areas) | Rounded coordinates (about 1 km from your device, about 10 km from our server), place-search text and language. As with any internet request, it also receives the IP address the request comes from |
| RevenueCat | Subscription management | Anonymous ID, purchase receipts and status, technical information needed to process purchases |
| Apple / Google (your phone's geocoding service) | Shows the place name for your coordinates | Coordinates |
Each service handles the data it receives under its own terms; for example, Open-Meteo's terms are at open-meteo.com/en/terms. We do not sell your data, and we do not share it with advertisers or data brokers.
You have the rights of access, rectification, erasure, restriction, portability, and objection. Because we hold only an anonymous ID, exercising these rights is easiest via the in-app deletion function; otherwise contact us at contact@teciora.com.
The services in §4 may process data in countries other than yours, including the United States and the European Union. Where the law requires it, transfers rely on safeguards such as the Standard Contractual Clauses in the providers' data-processing terms.
The App is a general-audience weather app and is not directed at children. We do not knowingly collect personal information from children; since we collect no name, email, or precise location, exposure is minimal.
All network communication is encrypted in transit (HTTPS/TLS). Server-side data is stored on infrastructure with encryption at rest (Google Cloud / Cloudflare). Access is restricted to what notification delivery and subscription management require. We do not write your coordinates to our server logs.
We will post any changes here and update the "Last updated" date. Material changes will also be announced in the App or in the App's release notes.
Teciora, RM Bldg. 701, Minami 2-jo Nishi 5-chome 31-1, Chuo-ku, Sapporo, Hokkaido 060-0062, Japan — contact@teciora.com
最終更新日: 2026-10-27
本プライバシーポリシーは、Teciora(以下「当方」)が、モバイルアプリ「Mood-Ring Weather」(以下「本アプリ」)においてお客様の情報をどのように取り扱うかを説明するものです。設計原則はひとつ——アプリが快適に動作するために必要な最小限しか、あなたのことを知らないこと。
| 区分 | 内容 | 送信先・保存場所 | 目的 |
|---|---|---|---|
| 天気取得用の位置 | 天気を取得するときの端末のおおよその緯度・経度。本アプリはおおよその位置だけを求めます(Android: おおよその位置情報の権限、iOS: 既定でおおよその位置) | 小数 2 桁(約 1 km)に丸め、端末から Open-Meteo へ直接送信。この経路では当方のサーバーに送りません。履歴として保存しません | 現在地の天気・空気質の取得と体感スコア(MRI)の計算 |
| 現在地の地名 | 上記の座標 | 端末に組み込まれた地名変換の機能(iOS は Apple、Android は Google)が、Apple・Google 各社のプライバシー条件のもとで処理します。当方は結果を受け取りません | 画面に地域名を表示するため |
| 緊急通知用のおおよその位置 | 小数 1 桁(約 10 km)に丸めた位置 1 点。位置を取得できず既定の地点を表示している間は保存しません | 当方のサーバー(Google Firebase Firestore)。匿名 ID に紐付け、位置が変わると上書き。当方の通知サーバー(Cloudflare Workers)が、この地域の予報を Open-Meteo に問い合わせます | お住まいの地域の緊急通知(熱中症・暴風・大雪)の判定と配信 |
| 地名検索の文字 | 地点を探すときに入力した文字(一致する地点を探すために本アプリが補った表記を含む)と、本アプリの表示言語 | 入力中に、端末から Open-Meteo の地名検索(ジオコーディング)へ直接送信。当方は受け取らず保存もしません。本アプリも検索履歴を残しません | 一致する地点を示して選べるようにするため |
| 保存した地点(Plus) | 保存した地点の名前と座標 | 端末内のみ。天気を取得するため、座標(約 1 km に丸めたもの)を上記と同じく Open-Meteo へ送信 | 保存した地点の天気を表示するため |
| 匿名ユーザー ID | Firebase 匿名認証が生成するランダムな識別子 | 当方のサーバー(Firebase)および RevenueCat | 個人を特定せずに通知購読・サブスクリプションの記録を保持するため |
| プッシュ通知トークン・端末の種類・言語 | プッシュ通知用に発行されるデバイストークン(Firebase Cloud Messaging。iOS では Apple の APNs トークンに対応付け)、iOS / Android の別、本アプリの表示言語 | 当方のサーバー(匿名 ID に紐付け) | 通知をお客様の言語で届けるためのみに保持。ユーザーの識別やプロファイリングには使用しません |
| 通知の送信記録 | どの種類・段階の緊急通知を、どの日を対象に、いつ送ったか。位置は含みません | 当方の通知サーバーの一時保存領域(Cloudflare)。匿名 ID に紐付け。最長 18 時間で自動的に消えます(熱中症の通知は 6 時間) | 同じ通知を繰り返し送らないため |
| アプリの設定 | 単位、テーマ、言語、通知の設定、チュートリアル表示フラグ | 端末内のみ | お客様の選択を覚えておくため |
| パーソナルキャリブレーション・体感データ | フィードバック、感受性の重み(暑さ/寒さ/湿度/気圧)、推定個人最適 MRI、体感記憶 | 端末内のみ。当方のサーバーには送りません | MRI をあなた仕様に補正するため |
| 購入情報(Plus) | 購読状態・購入レシート(Apple/Google および課金基盤 RevenueCat が処理)。購読の確認・復元のため、本アプリは起動時に匿名 ID を RevenueCat に伝えます(購入したことがなくても) | RevenueCat。および当方のサーバー: 権利の状態(プラン、商品、有効期限、自動更新の有無、ストア)と、購読イベントの記録(種類、商品、プラン、日時)を匿名 ID に紐付けて保存 | サブスクリプションの有効化・復元、会計・課金のお問い合わせへの対応。カード情報は Apple/Google だけが扱い、当方は受け取りません |
| Firebase のライブラリが送る技術情報 | 本アプリが使う Google Firebase のライブラリ(認証・データベース・通知)が、動作に必要な技術情報(ライブラリのバージョン、端末の機種、OS のバージョン、アプリのバージョンなど)と、ライブラリ自体の動作に関する限られた診断情報を送ります | Google。お客様の身元には紐付けられません | これらのサービスの動作と保守のため。当方は分析・広告に使いません |
本アプリの運営に必要なサービスだけを、上記の最小限の範囲で利用します。
| サービス | 役割 | 関与データ |
|---|---|---|
| Cloudflare(Workers) | 当方の通知サーバー: 購読された地域の予報の判定、緊急通知の送信、RevenueCat からの購読状態の受信 | 丸めた座標(約 10 km)、プッシュトークン、端末の種類、言語、匿名 ID、通知の送信記録(最長 18 時間で削除) |
| Google Firebase(匿名認証・Firestore・Cloud Messaging) | 匿名アカウント、当方のサーバーのデータベース、プッシュ配信 | 匿名 ID、丸めた座標(約 10 km)、プッシュトークン、端末の種類、言語、購読の権利と購読イベントの記録、Firebase のライブラリが送る技術情報 |
| Apple(APNs) | iOS のプッシュ配信 | プッシュトークン、通知の内容 |
| Open-Meteo | 天気・空気質・地名検索のデータ。端末から直接(緊急通知の地域については当方の通知サーバーから)問い合わせます | 丸めた座標(端末からは約 1 km、当方のサーバーからは約 10 km)、地名検索の文字と言語。インターネット上の通信の性質上、通信元の IP アドレスも届きます |
| RevenueCat | サブスクリプション管理 | 匿名 ID、購入レシート・購読状態、購入の処理に必要な技術情報 |
| Apple / Google(端末の地名変換の機能) | 座標から地域名を表示 | 座標 |
各サービスは、受け取ったデータをそれぞれの規約に基づいて取り扱います(例: Open-Meteo の規約は open-meteo.com/en/terms)。お客様のデータを販売しません。広告事業者・データブローカーへの提供も行いません。
アクセス・訂正・消去・制限・ポータビリティ・異議の各権利を行使できます。当方は匿名 ID しか保持していないため、最も確実な行使方法はアプリ内の削除機能です。その他のご請求は contact@teciora.com まで。
§4 のサービスは、米国・欧州連合を含むお客様の国以外でデータを処理する場合があります。法令が求める場合、移転は各社のデータ処理条件に含まれる標準契約条項(SCC)等の保護措置に基づきます。
本アプリは一般向けの天気アプリであり、子ども向けではありません。子どもの個人情報を意図的に収集することはなく、氏名・メール・正確な位置を収集しないため、リスクは最小化されています。
すべての通信は暗号化(HTTPS/TLS)されます。サーバー側データは保存時暗号化を備えたインフラ(Google Cloud / Cloudflare)に保存し、アクセスは通知配信と購読管理に必要な範囲に限定します。お客様の座標を当方のサーバーのログに記録しません。
変更があった場合は本ページに掲示し、最終更新日を更新します。重要な変更は、アプリ内またはアプリの更新内容(リリースノート)でもお知らせします。
Teciora(〒060-0062 北海道札幌市中央区南2条西五丁目31-1 RMBld. 701)— contact@teciora.com