Available Channels
Four notification delivery channels are available, each suited to different urgency levels.| Channel | Provider | Delivery Speed | Best For |
|---|---|---|---|
| Resend (primary), SendGrid (fallback) | Near-instant (typically < 30 seconds) | Detailed notifications, records that need archival, compliance communications | |
| SMS | Twilio | Near-instant (typically < 10 seconds) | Critical alerts requiring immediate attention, time-sensitive crew notifications |
| Push | Web Push API | Instant (when browser/app is active) | Real-time updates, status changes, assignment notifications |
| In-App | Native (WebSocket) | Instant | Low-urgency updates, informational messages, activity feed items |
Channel Fallback Behavior
If a primary channel fails, the system falls back according to these rules:| Failure | Fallback |
|---|---|
| Email delivery failure (bounce) | Retry once after 5 minutes, then log as undeliverable |
| SMS delivery failure | Fall back to email, log SMS failure |
| Push not available (user offline) | Queue for delivery when user reconnects; also deliver via in-app |
| In-app (user not connected) | Queue in notification center for next session |
SMS notifications require a verified phone number on the user’s profile. Users without a phone
number on file will not receive SMS notifications, and the system falls back to email for those
events.
Notification Event Types by Module
Safety Management (SMS)
| Event | Default Channels | Urgency | Description |
|---|---|---|---|
| New safety report submitted | Email, In-App | Normal | A team member submitted a new safety report |
| Report assigned for investigation | Email, Push, In-App | High | An investigation has been assigned to you |
| Investigation status change | Email, In-App | Normal | An investigation you are involved in changed status |
| CPA assigned | Email, Push, In-App | High | A corrective/preventive action was assigned to you |
| CPA approaching deadline | Email, SMS, Push | Critical | A CPA is within 7 days of its due date |
| CPA overdue | Email, SMS, Push | Critical | A CPA has passed its due date |
| Risk assessment requires review | Email, In-App | Normal | A risk assessment needs your review or approval |
| SPI threshold breached | Email, SMS, Push | Critical | A safety performance indicator crossed its alert threshold |
| Safety committee meeting scheduled | Email, In-App | Normal | A safety committee meeting has been scheduled |
| Compliance deadline approaching | Email, SMS, Push | Critical | A regulatory compliance deadline is within 30 days |
| Document requires signature | Email, Push, In-App | High | A safety document needs your signature or acknowledgment |
| Safety bulletin published | Email, In-App | Normal | A new safety bulletin was published to your workspace |
Flight Operations (Ops)
| Event | Default Channels | Urgency | Description |
|---|---|---|---|
| Trip created | Email, In-App | Normal | A new trip was created in the system |
| Trip assigned (crew) | Email, SMS, Push | High | You were assigned to a trip as PIC, SIC, or cabin crew |
| Trip status change | Email, Push, In-App | Normal | A trip you are involved in changed status |
| Trip cancelled | Email, SMS, Push | Critical | A trip you are assigned to was cancelled |
| Schedule conflict detected | Email, SMS, Push | Critical | A scheduling conflict was detected for crew or aircraft |
| Duty time limit approaching | Email, SMS, Push | Critical | A crew member is approaching duty time limits (14 CFR 135.267) |
| Aircraft status change | Email, Push, In-App | High | An aircraft changed operational status (e.g., grounded, in maintenance) |
| Due item approaching | Email, Push, In-App | High | An aircraft or crew due item is within its warning window |
| Due item overdue | Email, SMS, Push | Critical | An aircraft or crew due item has passed its due date |
| FRAT score elevated | Email, SMS, Push | Critical | A pre-departure FRAT assessment scored above the caution threshold |
| Passenger manifest updated | Email, In-App | Normal | A passenger manifest was modified for an upcoming trip |
| Expense submitted | Email, In-App | Normal | A crew member submitted an expense for approval |
| Charter request received | Email, Push, In-App | High | A new charter marketplace request matches your fleet profile |
FBO Management
| Event | Default Channels | Urgency | Description |
|---|---|---|---|
| New booking created | Email, In-App | Normal | A new hangar or tiedown booking was created |
| Booking check-in | Push, In-App | Normal | A guest has checked in |
| Booking check-out | Push, In-App | Normal | A guest has checked out |
| Payment received | Email, In-App | Normal | A payment was received on a booking or POS order |
| Payment overdue | Email, SMS | High | A booking or invoice payment is past due |
| Fuel delivery received | Email, Push, In-App | Normal | A fuel delivery was received and logged |
| Fuel QC inspection failed | Email, SMS, Push | Critical | A fuel quality control inspection failed — per NATA Safety 1st standards |
| Low fuel tank level | Email, SMS, Push | High | A fuel tank has dropped below its reorder threshold |
| POS low stock alert | Email, In-App | Normal | A tracked inventory item is at or below its reorder point |
| Customer portal message | Email, Push, In-App | Normal | A customer sent a message through the portal |
Billing and Financial
| Event | Default Channels | Urgency | Description |
|---|---|---|---|
| Invoice generated | Email, In-App | Normal | A new invoice was created |
| Invoice paid | Email, In-App | Normal | An invoice was paid in full |
| Invoice overdue | Email, SMS | High | An invoice is past its due date |
| Subscription renewal | Normal | Your PlaneConnection subscription is approaching renewal | |
| Payment method expiring | Email, SMS | High | A saved payment method is expiring within 30 days |
System and Security
| Event | Default Channels | Urgency | Description |
|---|---|---|---|
| New user invitation | Normal | A new team member was invited to the workspace | |
| User role changed | Email, In-App | Normal | Your role was changed in the workspace |
| Two-factor authentication enabled | Normal | 2FA was enabled on your account | |
| Login from new device | Email, Push | High | A login was detected from a previously unseen device |
| Password changed | Normal | Your password was changed | |
| API key created | Normal | A new API key was generated for the workspace | |
| Data export completed | Email, In-App | Normal | A requested data export is ready for download |
| Privacy request received | Email, Push | High | A data privacy request (GDPR/CCPA) was submitted |
Delivery Configuration
Workspace-Level Settings
Administrators control default notification behavior for all workspace members:| Setting | Type | Default | Description |
|---|---|---|---|
email_enabled | Boolean | true | Master toggle for email notifications |
sms_enabled | Boolean | false | Master toggle for SMS notifications (requires Twilio configuration) |
push_enabled | Boolean | true | Master toggle for push notifications |
in_app_enabled | Boolean | true | Master toggle for in-app notifications |
quiet_hours_start | Time | 22:00 | Start of quiet hours (non-critical notifications deferred) |
quiet_hours_end | Time | 06:00 | End of quiet hours |
quiet_hours_timezone | Timezone | Workspace timezone | Timezone for quiet hours calculation |
quiet_hours_override_critical | Boolean | true | Deliver critical notifications during quiet hours |
email_from_name | String | Workspace name | Display name for outgoing email notifications |
email_reply_to | String | Workspace admin email | Reply-to address for notification emails |
Disabling a channel at the workspace level prevents all users from receiving notifications through
that channel, regardless of personal preferences. Workspace-level settings override individual
user settings.
SMS Provider Configuration
SMS notifications require a configured Twilio integration (Settings > Integrations).| Setting | Description |
|---|---|
twilio_account_sid | Twilio Account SID |
twilio_auth_token | Twilio Auth Token (stored encrypted) |
twilio_phone_number | Twilio phone number used as the sender |
sms_rate_limit | Maximum SMS messages per user per hour (default: 10) |
Notification Preferences Schema
Each user has a preferences object that controls their individual notification behavior. Preferences are structured by event category and channel.A daily or weekly digest email summarizing all non-critical notifications is available. Digest settings are configured in Account > Notification Preferences.
Related
Configure Your Workspace
Notification channel and quiet hours configuration.
Set Up Integrations
Twilio and email provider configuration.
User Roles
Role-based notification visibility and defaults.
Permissions Matrix
Which roles can configure workspace-level notification settings.