By creating an account on this site (rosteriqapp.com) and using it, you agree to the terms below. If you do not agree, do not create an account or use the app.
RosterIQ is an independent, unofficial pairing viewer built and operated by Saif Radwan, a single Cargojet pilot (the "Operator"), on a personal basis.
At this time, RosterIQ is not a Cargojet product and is not affiliated with, sponsored by, endorsed by, or approved by Cargojet, the Air Line Pilots Association (ALPA), any other airline, union, government, or regulatory body. References to Cargojet, aircraft types, airport codes, and pairing data are factual references only and do not imply any business relationship. Any future affiliation, sponsorship, or endorsement will be reflected in an updated version of these Terms.
RosterIQ requires a personal account and is intended only for current Cargojet pilots as a personal bid-analysis convenience. To see Cargojet pairing data you must create an account, verify your email, and link (bind) your account to your own Cargojet pilot record by confirming your employee number and last name. By creating an account and binding it, you represent that you are an active Cargojet pilot, or have been individually authorized by the Operator, and that the pilot record you bind to is your own.
You agree not to:
The right-click block and DevTools shortcut block on this site are anti-casual-snooping speed bumps, not security boundaries. Circumventing them gives you no rights you would not otherwise have under these Terms.
RosterIQ is provided "AS IS" and "AS AVAILABLE." The Operator makes no representations or warranties of any kind, express or implied, including without limitation warranties of accuracy, completeness, timeliness, fitness for a particular purpose, merchantability, non-infringement, or uninterrupted availability.
The pairing data shown may contain errors, omissions, formatting differences from the source, or stale information. Always verify pairing details, dates, times, and durations against the official Cargojet publication before bidding, trading, calling crew scheduling, or making any operational decision. RosterIQ is a convenience tool, never a system of record.
To the fullest extent permitted by law, the Operator is not liable for any direct, indirect, incidental, special, consequential, exemplary, or punitive damages of any kind, including without limitation:
This limitation applies regardless of the legal theory (contract, tort, negligence, strict liability, statutory, or otherwise) and applies even if the Operator has been advised of the possibility of such damages.
All software, code, layout, design, text, original content, and analytics displays in RosterIQ are the exclusive property of the Operator. You are granted a limited, revocable, non-transferable, non-exclusive license to access and use RosterIQ for the authorized use described in Section 2.
You may not copy, modify, adapt, translate, sell, license, sublicense, distribute, or create derivative works of any part of RosterIQ or its underlying code, in whole or in part, by any means.
The pairing data itself, the Cargojet name, and any Cargojet trademarks remain the property of Cargojet. Nothing in these Terms transfers any right to that data or those marks; RosterIQ displays them under fair-use / nominative-use principles for the descriptive purpose of identifying pairings to the pilots they apply to.
To operate RosterIQ, the following is collected and stored on Cloudflare's infrastructure (the hosting provider):
This data is visible only to the Operator and is used to verify authorized use, diagnose bugs, and inform feature priorities. It is not sold, shared, or transferred to any third party except as necessary to operate RosterIQ (Cloudflare as hosting provider, and Resend as the email-delivery provider for verification and account email, each subject to their own terms). The Operator may delete any record at any time without notice.
Anonymous usage telemetry: RosterIQ also records aggregated, de-identified counts of which features and filters pilots use, including which filters, sort keys, and modal tools are opened, and which account and navigation controls are used, broken down by rank (CA/FO). No employee numbers, names, IP addresses, or individual session details are stored in this telemetry. Only aggregate per-rank counts (for example, "FOs activated the Carry Out filter 412 times in May 2026"). This data is used solely to inform product decisions about which features to maintain or improve.
Operator-side audit log: a record is kept of administrative actions the Operator takes, for example reviewing or moderating swap listings, binding, unbinding, suspending, or deleting accounts, resetting a password, changing an account email, or signing out active sessions, with a timestamp and approximate location of the action. This log is internal and exists for the Operator's own review and accountability. It does not collect any new pilot-identifying information beyond what is already covered by the bullets above; a record that references an account will reference that account's identity, since the action targets records already covered above. No pilot browsing action is added to this log.
Presence tracking: while you're using RosterIQ in an open browser tab, your client periodically reports a "last seen" timestamp along with your employee number, position, and base to the Operator's server. This data exists only so the Operator can see currently-active sessions in an admin dashboard, for example to confirm whether a pilot is online before reaching out, or to identify a session that should be signed out for security reasons. Reports stop when you sign out, close the tab, or switch to another browser tab; entries auto-purge from the server's view after 5 minutes of no activity. This does not include any new pilot-identifying information beyond what sign-in records already capture.
Pairing Swap and Deadhead Swap screenshots: if you optionally attach a screenshot to a Pairing Swap or Deadhead Swap listing, the image is stored on Cloudflare R2 and is visible only to authenticated pilots at the same base and rank as you. The image is automatically deleted when the listing is removed or purged. Image bytes are not shared with any third party beyond Cloudflare as the storage provider. Do not upload screenshots containing information you do not want other same-base, same-rank pilots to see; the system shows the image as-is.
Vacation Swap photos: if you optionally attach one or more photos to a Vacation Swap listing (for example, a screenshot of your schedule or vacation block), each image is stored on Cloudflare R2 and is visible only to you and to authenticated pilots at the same base and rank as you. The images are automatically deleted when the listing is deleted (by you or the Operator). Image bytes are not shared with any third party beyond Cloudflare as the storage provider. Do not upload photos containing information you do not want other same-base, same-rank pilots to see; the system shows the image as-is.
Per-feature time spent: while you have RosterIQ open and are actively using it, your client periodically reports which feature area you are in (for example, the pairing viewer, Vacation Swap, Pairing Swap, or your account settings) along with your employee number, so the Operator can see how much active time is spent in each feature. Crediting pauses while you are idle. This is an extension of the session-timing and presence tracking described above; it adds a per-feature breakdown but no new pilot-identifying information. It is visible only to the Operator, is used solely to understand which features pilots find useful, and is not sold, shared, or transferred to any third party beyond Cloudflare as the hosting provider.
Support interactions: RosterIQ shows an optional Support link that opens a dialog inviting you to support the project (for example, via a "Buy Me a Coffee" page). If you open that dialog or click through to the support page, the Operator records that you did so: the action, the time, your linked identity, and an approximate IP-based location, so the Operator can see which pilots are engaging with the support option. This adds no payment information (any actual payment happens on the third-party support page under that provider's own terms, not within RosterIQ). It is visible only to the Operator and is not sold, shared, or transferred to any third party beyond Cloudflare as the hosting provider.
Listing moderation: the Operator may review, edit, correct, or remove any swap listing you post (Pairing Swap, Vacation Swap, or Deadhead Swap), for example to fix a pairing code or schedule detail that did not capture correctly, or to remove content that does not belong. If the Operator edits a listing that already has open swap proposals against it, those proposals are automatically cancelled and the proposing pilots are notified (an in-app message, plus an email if they have the matching notification preference enabled) so no one acts on stale terms. These moderation actions are recorded in the Operator-side audit log described above, referencing the affected listing and its owner's account; they collect no new pilot-identifying information beyond what is already covered above.
Your acceptance of these Terms is recorded with your account when you create it (the version you accepted, and when). RosterIQ does not rely on browser local storage to keep you signed in; your session is held in a secure, HttpOnly cookie. No payment or sensitive financial information is collected.
By using RosterIQ, you consent to this collection.
The Operator may revoke access, suspend or delete your account, or discontinue RosterIQ at any time, for any reason or no reason, with or without notice. You may stop using RosterIQ at any time, and may request deletion of your account using the in-app Feedback button. Sections 4 (Limitation of Liability), 5 (Intellectual Property), 6 (Privacy), 8 (Indemnification), 10 (Governing Law), and 11 (Severability) survive termination.
You agree to indemnify, defend, and hold harmless the Operator from any claim, demand, loss, damage, cost, or expense (including reasonable legal fees) arising out of or relating to:
The Operator may update these Terms at any time. You accept the then-current Terms when you create your account. For material changes, the Operator may require renewed acceptance or notify account holders by email or in-app notice; continued use of RosterIQ after a change constitutes acceptance of the updated Terms.
These Terms are governed by the laws of the Province of Ontario, Canada, without regard to conflict-of-laws principles. Any dispute arising out of or relating to these Terms or RosterIQ shall be resolved exclusively in the courts located in Toronto, Ontario.
If any provision of these Terms is held invalid or unenforceable, the remaining provisions shall continue in full force and effect. Failure to enforce any right under these Terms is not a waiver of that right.
For questions about these Terms or to report a violation, use the in-app Feedback button (visible after sign-in).