Flyers

Privacy Policy

Effective date: 12 May 2026 Last updated: 8 July 2026 (Version 4.2 — app version 3.0.6)

This Privacy Policy describes how the Flyers iOS application handles your information. The Flyers app is published by Capt. Navneet Reddy (the Developer). If you have questions, contact NAV-INT-LLC@pm.me.

This policy exists to be plain, short, and honest. The summary is: Flyers is a personal companion app for airline crew. It runs on your device, talks to your airline's eCrew portal and Apple's iCloud, and collects no analytics. By default, the Developer cannot read your eCrew credentials or on-device roster cache. Push notifications are opt-in: after your first sign-in Flyers shows a one-time prompt explaining notifications and letting you turn them on or off, and you can change this later in Settings. If you explicitly opt into server-side eCrew monitoring, Flyers sends only the minimum credentials and device identifiers needed for that monitoring to the Flyers Roster Watcher so it can check for roster changes and send signal-only push notifications. Exact What's Changed details are still fetched and computed locally on your iPhone when you open the notification. Flyers uses maps only to show duty routes, airport context, and layover information — it does not track your location. If you opt into Flyers Social, roster events you publish are stored in Apple's CloudKit Public Database and are intended to be visible only to accepted friends in the app.


1. Who runs Flyers

Most Flyers features run only on your device. The optional server-side eCrew monitoring feature uses a Flyers-operated Roster Watcher backend only after you explicitly enable it in Settings. Your airline's eCrew portal remains operated by your airline, not the Developer, and your iCloud account remains operated by Apple.

2. What Flyers stores and where

2.1 On your device (Keychain + SwiftData)

DataWhereWhy
Your eCrew portal credentials (crew ID, password)iOS Keychain, with kSecAttrAccessibleWhenUnlockedThisDeviceOnlySo the app can sign back in to your airline's portal automatically.
Your roster, logbook, flight details, schedule cache, and local What's Changed recordsSwiftData (local on-device only)So the app works offline, renders instantly, and lets you review detected roster changes.
App preferences (selected time zone, biometric unlock setting, notification choices, one-time notification prompt state, server-monitoring consent state, etc.)UserDefaults / SwiftData (on-device)App configuration.

By default, this data stays on your device and is not sent to the Developer, to analytics, or to advertising services.

2.2 Optional server-side eCrew monitoring

Server-side eCrew monitoring is off by default. If you choose to enable it in Settings, Flyers shows a separate consent screen and requires explicit acknowledgements before the final Enable action. Only then does Flyers send the data below to the Flyers Roster Watcher backend over HTTPS so the backend can periodically check eCrew for roster changes and send push notifications even when iOS does not wake the app.

DataWhereWhy
eCrew crew ID and passwordEncrypted credential vault on the Roster Watcher backendTo sign into your airline's eCrew portal for your account and detect roster changes.
APNs device token and OneSignal subscription IDRoster Watcher enrollment record and OneSignalTo send a roster-change push notification to this device.
Tenant/airline identifier, consent version, monitoring status, and username suffixRoster Watcher enrollment recordTo verify the supported eCrew tenant, record consent, show status, and support deletion.

The Roster Watcher stores credentials encrypted at rest and does not store roster HTML, session cookies, or raw roster contents. It stores only a safe roster fingerprint/change state needed to decide whether a notification should be sent.

Push payloads are signal-only: they tell Flyers that a change was detected, but they do not include duty details, report times, hotel data, raw roster content, credentials, or cookies. When you open a roster-change push, Flyers refreshes eCrew on your iPhone, computes the exact What's Changed diff locally, and stores that review history on the device.

You can disable monitoring from Settings at any time; Flyers asks the backend to hard-delete the device enrollment and clears local monitoring state.

2.3 In your airline's eCrew portal

The Flyers app talks to the AIMS eCrew web portal operated by your airline (your airline's own eCrew domain). When you sign in, the app authenticates against that portal and fetches your own roster, dashboard, and flight details. This is the same data your airline would let you see by signing into the portal in a web browser. The Developer does not operate the eCrew portal and cannot see what your airline stores or how long.

2.4 In your iCloud account (only if you use Flyers Social)

If you choose to enable Flyers Social — the optional feature that lets you share your roster with other Flyers users — the following data is stored in your iCloud account via Apple's CloudKit:

DataWhere in CloudKitVisibility
Your public @handle, display name, and internal anchor (airlineId, staffId)Public Database (Handle record)The handle and display name are visible to other Flyers users. The (airlineId, staffId) pair is used for impersonation protection and is not displayed in normal app UI.
Your friend requests, accepted edges, and any users you blockPublic Database (FriendRequest, FriendEdge, Block)Used by the app to show requests, friendships and blocks.
The roster events you publish to friendsPublic Database (SharedRoster)Intended to be shown only to accepted friends listed in the record's viewableBy field. The app checks that list before rendering the roster.

These records sit in Apple's CloudKit container (iCloud.com.navintllc.flyers.ios). Apple operates this infrastructure. Because Flyers Social uses CloudKit Public Database records for roster sharing, roster payloads are not a substitute for regulatory roster systems and should be considered shared data once you opt into publishing.

You can stop using Flyers Social at any time. Settings → Flyers Social → Delete my Flyers Social data deletes your published SharedRoster record and clears the local handle state on this device.

2.5 Push notifications and maps

Flyers uses iOS local notifications and push notifications only for app functionality: report reminders, crew-mail alerts, roster-change alerts, and optional server-monitoring roster-change signals. Notifications are opt-in. After a crew member signs in for the first time on a device, Flyers shows a one-time prompt explaining notifications with an on/off choice; the choice can be changed later in Settings.

If notifications are enabled, Apple Push Notification service and OneSignal process the technical device/subscription identifiers needed to deliver alerts to that device. Notification content is limited to operational app alerts. Server-monitoring pushes are signal-only and do not contain roster contents, credentials, duty details, hotel data, or raw eCrew data.

Flyers includes a location purpose string because the app links map/location-capable Apple frameworks and shows duty routes, airport context, and layover information on maps. Flyers does not track your live location, does not store location history, and does not send device location to the Developer, the Roster Watcher, Cloudflare, OneSignal, analytics, or advertisers.

3. What Flyers does not collect

4. Subscriptions and payments

Flyers offers an optional Flyers Pro subscription — an auto-renewable subscription billed monthly ($2.99) or yearly ($19.99), with a 7-day free trial that unlocks the full app. The subscription renews automatically at the end of each period until you cancel.

All purchases are processed by Apple via StoreKit and the App Store. Flyers receives only your entitlement status from StoreKit on your device — that is, whether Pro is currently active. Flyers does not collect, store, or transmit your payment details, card numbers, or Apple ID, and no purchase data leaves your device beyond Apple's own processing. The Developer receives only Apple's standard, aggregated payout and never sees your card number, full name, or address.

Manage or cancel your subscription in Settings → Apple ID → Subscriptions on your iPhone.

5. Your rights

You can delete most Flyers data yourself at any time:

If you are an EU or UK resident, you have additional rights under GDPR / UK GDPR — including access, rectification, erasure, restriction, portability, and objection. Write to the contact email below. Depending on the feature, these rights may be exercised directly via your device, Apple/iCloud, your airline/eCrew tenant, or the Roster Watcher delete control.

6. Data retention

7. Children

Flyers is rated 4+ but its intended audience is professional airline crew. The Developer does not knowingly collect data from anyone under 13.

8. International transfers

Apple operates CloudKit globally and may store your data in any of its data centres depending on your iCloud region. Cloudflare and OneSignal operate globally and may process server-monitoring/push-delivery data according to their infrastructure regions. By using Flyers Social or server-side eCrew monitoring, you consent to the corresponding infrastructure handling needed for those optional features.

9. Security

10. Changes to this policy

If material changes are needed, the policy will be updated here and the Last updated date at the top will change. Continued use of the app after a change constitutes acceptance.

11. Disclaimer & limitation of liability

Flyers is an independent, unofficial companion app. It is not affiliated with, endorsed by, or supported by any airline, AIMS International, OneSignal, Cloudflare, or Apple. "eCrew", "AIMS", and any airline names or marks are the property of their respective owners and are used only to describe what the app connects to.

Roster data and notifications are best-effort and may be delayed, incomplete, or unavailable. The official eCrew portal and your airline's official communications are the authoritative source for your duties, report times, and any roster change — do not rely on Flyers alone for duty awareness. Flyers is provided "as is", without warranty of any kind. To the maximum extent permitted by law, the Developer accepts no liability for any missed duty, error, omission, or loss arising from use of the app.

12. Contact

Capt. Navneet Reddy NAV-INT-LLC@pm.me

For privacy questions, data-access requests, or anything else, write to the email above.